|
Опубликовано 25.11.2006 07:58 (18 лет назад) # |
Писать решил на канве.
Проинициализировал на апи форму, рисую на ней через BitBlt. Скорость стала в 2 раза больше, чем через Draw на статичной форме =)
Готовы системы частиц. Все объекты представлю как элементы такой системы, соответственно избавлюсь от гравитационного гемора.
Почти готова менюшка. |
|
|
|
Опубликовано 25.11.2006 17:03 (18 лет назад) # |
Да, менюшка - это главное и основное в игре! ^____^ |
|
|
|
Опубликовано 25.11.2006 17:38 (18 лет назад) # |
да лан те =) |
|
|
|
Опубликовано 27.11.2006 19:38 (18 лет назад) # |
- Написанно 35-40% физики.
- Объекты и Юниты представленны как частицы
- загружается карта.
- Качается Аниматрица %)
редакция от Dronishe, 27.11.2006 19:42 |
|
|
|
Опубликовано 27.11.2006 20:09 (18 лет назад) # |
Куда качается? Ех, реаниматрица по тебе плачет! ^___^ |
|
|
|
Опубликовано 27.11.2006 21:29 (18 лет назад) # |
Флудераст хренов :@ |
|
|
|
Опубликовано 27.11.2006 22:09 (18 лет назад) # |
Обнаружен злостный глюк.Объекты проваливаются сквозь землю. причём не всегда. ужоснах. надо лечить. |
|
|
|
Опубликовано 28.11.2006 21:19 (18 лет назад) # |
Готова аркадная физика и почти готова работа с картой. |
|
|
|
Опубликовано 28.11.2006 22:17 (18 лет назад) # |
Как БЫСТРО скопировать массив?
Т.Е. У меня есть:
array1, array2: array of array of byte;
Если я делаю так:
Array1:=array2;
или так:
array1:=copy(array2,0,length(array2)-1);
То при любом изменении array1, меняется и array2.
А мне нужна полная копия как сомостоятельный массив. |
|
|
|
Опубликовано 29.11.2006 05:40 (18 лет назад) # |
Что-то я видел про Move
Move(array1[0], array2[0], Length(array2) - 1); Я сам точно не знаю, но помоему то
Посмотрел:
Там тотже Copy только на асме
редакция от CHASER, 29.11.2006 06:49 |
|
|
|
Опубликовано 29.11.2006 06:15 (18 лет назад) # |
Выделять не забываешь? |
|
|
|
Опубликовано 29.11.2006 10:15 (18 лет назад) # |
SetLength(array1, length(array2));
for i := 0 to length(array2) do
array1[i] := array2[i];
:) |
|
|
|
Опубликовано 29.11.2006 14:54 (18 лет назад) # |
beisik, издеваешься, да?
Всё равно не работает! Move не работает с динамичискими массивами! |
|
|
|
Опубликовано 29.11.2006 15:45 (18 лет назад) # |
Протестил, надо так (и только так, другие параметры не пашут):
Move(a, b, Length(a));
Выполняется за 0 секунд))
Если я делаю так:
Array1:=array2;
Если так делать, то Array1 получит ссылку на втрой массив, что не приемлимо (т.к. при изменении в первом, их получит и второй)
редакция от CHASER, 29.11.2006 15:47 |
|
|
|
Опубликовано 29.11.2006 16:41 (18 лет назад) # |
Я это понял уже давно. И с Move, не дурак, разобрался. Но я ещё раз повторю, что Move работает только со СТАТИЧЕСКИМИ массивами. В противном случае, он перекрывает область памяти в которой я храню битмапы. |
|
|
|
Опубликовано 29.11.2006 17:07 (18 лет назад) # |
a2:=copy(a1, 0, Length(a1));
всё работает на ура
редакция от Feo, 29.11.2006 17:08 |
|
|
|
Опубликовано 29.11.2006 17:35 (18 лет назад) # |
Я пробовал это.ю При изменении чего либо в а2 меняется и а1 |
|
|
|
Опубликовано 29.11.2006 18:50 (18 лет назад) # |
Dronishe написал:
Я пробовал это.ю При изменении чего либо в а2 меняется и а1
что то ты прогоняешь, ничего нигде не меняется. |
|
|
|
Опубликовано 29.11.2006 19:25 (18 лет назад) # |
По моему кому-то нужно порыться в коде и поискать утечки памяти. ^__^ |
|
|
|
Опубликовано 30.11.2006 05:13 (18 лет назад) # |
ShowMemoryLeaksOnShutdown:= true; |
|
|