![](images/chestnut/misc/left.gif) |
2D-программирование Вопросы, касающиеся двумерного программирования |
16.01.2012, 09:47
|
#61
|
ПроЭктировщик
Регистрация: 26.06.2007
Сообщений: 194
Написано 21 полезных сообщений (для 25 пользователей)
|
Ответ: Опять проблемы.
Сообщение от FireOwl
Про картинку. Как я понял, она вообще одна.
А в таком случае копировать ее в каждый экземпляр, да еще и загружать каждый раз из файла, абсолютно бессмысленно.
Проще для рисования каждого камня обращаться к одной картинке,
в виде глобальной переменной или параметра передаваемого в функцию обновления камней.
|
Вобщемто да, неподумал))
П.с. Переделал ф-цию.
|
(Offline)
|
|
16.01.2012, 14:43
|
#62
|
Мастер
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений (для 504 пользователей)
|
Ответ: Опять проблемы.
GetHandle() это моя личная функция (которой нет в B3D), для вывода из номера ячейки..
В B3D все есть (Правда называется она Handle%(Тип%) )
|
Про Handle я то знаю (им я и вносил в массив)
GetHandle() функция из моей длл у других точно не будет в Блитзе
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
16.01.2012, 15:50
|
#63
|
Знающий
Регистрация: 04.11.2011
Сообщений: 285
Написано 66 полезных сообщений (для 159 пользователей)
|
Ответ: Опять проблемы.
а где кнопка спойлера? ее тут нет?
и да, как сделать рандомную генерацию ландшафта из кубов? и вообще чтобы все было из кубов?
страшный спойлер
|
(Offline)
|
|
16.01.2012, 17:10
|
#64
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
На ютьюбе глянь, там есть цикл видео о создании Minecraft'a на блице. И вопрос не совсем соответствует теме.
|
(Offline)
|
|
16.01.2012, 17:23
|
#65
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Так, у меня возникло два вопроса. Во-первых, можно ли как-нибудь оптимизировать тот код, который отвечает за поворот игрока в направление куда он идет? И как удобнее всего сделать бесконечный(почти бесконечный ![:)](images/smilies/smile.gif) ) уровень? Мо моим соображениям надо делать 4 функции отвечающие за создание карты сверху,слева,справа,снизу от нынешней карты. Но я не знаю как сделать сохранение карты и последующую загрузку. Будет обидно если игрок застроит первую карту, пойдет на вторую, вернется, а там опять новая карта ![:)](images/smilies/smile.gif)
Последний раз редактировалось Nikich, 17.01.2012 в 21:50.
|
(Offline)
|
|
17.01.2012, 21:50
|
#66
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
И как сделать так, чтобы камни при создании не создавались друг в друге, и вообще не могли быть в друг друге?
|
(Offline)
|
|
18.01.2012, 04:34
|
#67
|
Бывалый
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений (для 1,836 пользователей)
|
Ответ: Опять проблемы.
Проще всего пользоваться KeyHit, вмеcто KeyDown, чтобы функция создания срабатывала только один раз за щелчок.
А если надо предупредить возможные следующие щелчки по тому же месту,
придется перебрать все существующие камни, на предмет близости координат.
|
(Offline)
|
|
18.01.2012, 06:55
|
#68
|
Гигант индустрии
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений (для 3,298 пользователей)
|
Ответ: Опять проблемы.
Как то так. Писал в блокноте поэтому может быть не правильно.
For stone.stone = Each stone
For stone2.stone = Each stone
If MouseHit (1) Then
If stone2 <> stone Then
If Not ImagesCollide (stone\image,stone\x,stone\y,1,stone2\image,stone2\x,stone2\y,1) Then CreateStone (x#,y#)
End If
End If
Next
Next
|
(Offline)
|
|
18.01.2012, 06:59
|
#69
|
Бывалый
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений (для 1,836 пользователей)
|
Ответ: Опять проблемы.
А зачем перебирать два раза список камней?
Создается один камень - и проверяется один раз по списку.
Подходит - добавляется в список.
|
(Offline)
|
|
19.01.2012, 00:25
|
#70
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Нет, мне не это надо. Когда карта генерируется, камни появляются в друг друге.
И можете подсказать что тут нет так?
Function DrawInventory()
For c.Inventory=Each Inventory
DrawImage c\image,c\x,100
Next
End Function
Function CreateInventory()
For a1=1 To 4
c.Inventory=New Inventory
c\x=c\x+72
c\id=1
c\image=LoadImage("cell.bmp")
Next
End Function
FPS резко падает до MAV. И ничего не рисуется. Проблема скорее всего в CreateInventory().
|
(Offline)
|
|
19.01.2012, 01:26
|
#71
|
ПроЭктировщик
Регистрация: 26.06.2007
Сообщений: 194
Написано 21 полезных сообщений (для 25 пользователей)
|
Ответ: Опять проблемы.
Сообщение от Nikich
Нет, мне не это надо. Когда карта генерируется, камни появляются в друг друге.
И можете подсказать что тут нет так?
Function DrawInventory()
For c.Inventory=Each Inventory
DrawImage c\image,c\x,100
Next
End Function
Function CreateInventory()
For a1=1 To 4
c.Inventory=New Inventory
c\x=c\x+72
c\id=1
c\image=LoadImage("cell.bmp")
Next
End Function
FPS резко падает до MAV. И ничего не рисуется. Проблема скорее всего в CreateInventory().
|
А насколько часто ты вызываеш ф-цию CreateInventory()?
И ты точно уверен что именно эти ф-ции жрут память?
|
(Offline)
|
|
19.01.2012, 01:31
|
#72
|
Бывалый
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений (для 1,836 пользователей)
|
Ответ: Опять проблемы.
А функция создания инвентаря случайно не из главного цикла вызывается?
|
(Offline)
|
|
19.01.2012, 09:53
|
#73
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Да, именно там
У меня тут возникла идея о свете. Что если использовать не одну картинку травы на весь бэкграунд, а заместить ее большим количеством маленьких? Тогда используя трехмерный массив(х,у,light) можно сделать квадратное освещение. Но не будет ли это требовательно?
|
(Offline)
|
|
19.01.2012, 21:10
|
#74
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Инвентарь пока декорация ![:)](images/smilies/smile.gif) Хотелось бы услышать, что изменить в камнях? Выглядят ли они как камни?
Последний раз редактировалось Nikich, 05.02.2012 в 22:16.
|
(Offline)
|
|
19.01.2012, 21:36
|
#75
|
Гигант индустрии
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений (для 3,298 пользователей)
|
Ответ: Опять проблемы.
Сообщение от Nikich
Инвентарь пока декорация ![:)](images/smilies/smile.gif) Хотелось бы услышать, что изменить в камнях? Выглядят ли они как камни?
|
Сохраняй картинки в . png, курсор рисуй самым последним чтоб ничто его не перекрывало. Картинка камней подойдет если камни будут раза в два меньше размером. ![:)](images/smilies/smile.gif)
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 05:18.
|