Выкладываем советы
Решил вот создать темку!
Что-бы долго не искать, сюда кладём советы! Вот я пока один выложу!
|
Re: Выкладываем советы
Запись в строку по индексам – sting[2]=78
Одним из недостатков БМ является невозможность индексного доступа к строке для записи, как в массивах. Объяснение, почему Марк не делает нормальный индексный доступ к строкам, а только чтение, меня просто развеселило: он заботится о том, что, если мы передаем строку в функцию, ее там кто-то может изменить. А типа чтобы ее не изменили стопроцентно надо ее копировать, а не передавать через ссылку. А это целых 7 лишних символов каждый раз набирать: ".Copy()". Вопрос а нафик нам вообще надо сохранять строку? Или мы настолько тупы, что не знаем, что пишем? И нам ни за что не известно будет ли функция менять строку или нет? Ппц просто. Я уже молчу про то, что это решается на уровне языка элементарно, и не в одном языке делалось: аргумент функции объявляется как ссылка или как значение. Если ссылка – передаем ссылку на строку и она может быть изменена после работы функции. Если значение – то строка копируется и что там функция будет с ней делать, нас не волнует: у нас оригинал, а там - копия. Все блин. Все давно известно, ничего не надо изобретать и писать лишних 7 символов тоже не надо. Он наверное пропитался духом псевдо-любви к умалишенным в ущерб неумалишенных, так культивируемой в последнее время в США. Хотя это странно - он то не там совсем живет. Марк типо сильно боится дураков-программистов и сильно о них заботится. Ну мы не дураки, поэтому не только не будем делать глупостей со строками, а даже будем с ними делать то, что нам не дадено, но нужно: Код:
Local p:Int Ptr = Int Ptr(Varptr(str)) А вот и рабочий примерчик: Код:
Local str$ = "Hello" |
Re: Выкладываем советы
Напоминаю, если вам совет понравятся,При установке и в опциях игры обязательно должен быть пункт , где будет папка SAVES Потому-что при неисправности системы или жёсткого диска с системой все папки и файлы в папке Мои Документы могут исчезнуть (У меня такое было!!!) Сейчас обычно в играх сейвы сохраняются именно туда Но если папку SAVES установить в папку с игрой неопытные пользователи могут её не найти и при неисправности жесткого диска с игрой - и игра, и папка SAVES - удалятся Я бы сделал возможность выбирать, где должна лежать папка SAVES? И сделать возможность сохранять в нескольких местах! |
Re: Выкладываем советы
дайте совет по работе сс хттп в мп....а именно,как сделать так чтоб текст из текстфилда переносился к примеру в водную строку в гугле???
За рание спасибо!!! |
Re: Выкладываем советы
Насчет текстфилда ничего не знаю. Даю хинт по массивам.
Быстрый обход многомерного массива. Если мы задаем многомерный массив в виде array:Type[a,b,...,n], то пройти его весь можно простым eachin! Пример: Код:
Local a%[1,2,3] |
Re: Выкладываем советы
хм. а как ето разварачивает массив? по строкам, или по столбцам?
|
Re: Выкладываем советы
1)Не используйте стандартный блицевский террайн, подгружайте уровни мешами
2)Старайтесь использовать меньше блицевских комманд, старайтесь делать как можно больше математики(если это возможно), используя игру переменными, т.к обрабатывается это быстрее, да и когда сам придумаешь систему, проще баги исправлять 3)Не пренебрегайте большим количеством условий, т.к. условия-это основа языка. 4)Храните все настройки такие как характеристики оружия,бота...в отдельных текстовых файлах, так-же при создании квестов и диалогов текст тоже подгружайте-увеличивает скорость компиляции и работы 5)Не используйте MaskImage-глючно, лучше создать маску в Фотожопе 6)Не забывайте очищать переменные, удалять меши и текстуры, использование которых больше не предусматривается дабы ускорить работу |
Re: Выкладываем советы
AndruXa, ты чего пьяный? раздел БлитзМакс.
|
Re: Выкладываем советы
Цитата:
|
Re: Выкладываем советы
AndruXa
ну и про какой тогда движок ты писал ? |
Re: Выкладываем советы
Как просто нарисовать часть изображения.
Код:
Function drawimagerect (image:TImage,x#,y#,xs%,ys%,width%,height%) Команду PixmapWindow(...) можно заменить на аналог с использованием ООП: image.pixmaps[0].window( xs, ys, width, height ). При этом не надо делать после отрисовки UnlockImage. Недостаток этого способа - низкое быстродействие, т.к. при поличении окна от TPixmap, происходит копирование части изображения самим процессором, без использования аппаратного ускорения. Достоинство - простота и краткость. |
Ответ: Выкладываем советы
если нам надо сгенерировать случайно число A - M раз, чило B - K раз и тд
то смотрим суда :) вот сам код в два типа Код:
Type TGeneratorPair Код:
потому для максимального быстродействия списком юзаем мою модификацию :-) |
Ответ: Выкладываем советы
drunnik
кстати, вспомнил :) игры пишут в папку мои документы потому что если система в режиме пользователя, а не администратора то приложения, в частности игры, не могут писать в свою папку идинственое куда они могут писать ето в мои документы (в пользовательскую папку) так что будте осторожны - ваша игра просто не запустится на зарубежных компьютерах с простыми пользователями :) |
Ответ: Выкладываем советы
Давно тут никого не было...
Мой совет, как выводить сглаженный текст: использовать SetBlend(ALPHABLEND), перед отрисовкой текста с DrawText(). |
Ответ: Выкладываем советы
Думаю что самый лучший выход отрисовки части изображения - это блиттером Driver.DrawPrimitive() - но он тоже не идеален....и довольно спецефичен....но побыстрее...=)
|
Часовой пояс GMT +4, время: 18:50. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot