{{notification.text}}

MirGames

17.02.10 16:17
0
DRON
а как с такой картинки анимацию сделать?
в двиге это через матрицу делается или процедура какая есть7
Отредактировано: 17.02.10 16:33
#901
28.04.12 01:49
0
Kerbo
А где прописан IResourceManager?
#902
28.04.12 02:08
0
Цитата
static ITexture *pRombEmpty;

С++ учим, ага. static в хедерах вообще нужен только в очень специфических случаях (более того, за объявление не-extern переменной в хедере надо бить по рукам).

Меняй static на extern и добавляй "ITexture *pRombEmpty;" в MG_Functions.cpp.

Ну и вообще, куча глобальных переменных с объектами-текстурами - это плохо. Этим должен заниматься текстурный менагер.
#903
Программир Всия Руси!
29.04.12 15:34
0
mgames
Глянь комментарии к последней новости на сайте.
#904
Kerbo
30.04.12 19:46
0
Vga
Благодарю. Вроде всё работает.
В универе по cpp был базовый курс, так что пробелов хватает.

Насчёт кучи глобальных переменных с текстурами. Во всех примерах DGLE2 они были всегда глобальными, и я воспринимал это как особенность движка. Их можно объявить подругому?
#905
Программир Всия Руси!
30.04.12 23:22
0
Цитата
Во всех примерах DGLE2 они были всегда глобальными, и я воспринимал это как особенность движка. Их можно объявить подругому?

Конечно, я всегда все в классы у себя оборачиваю.
#906
Kerbo
03.05.12 01:27
0
DRON

А можешь пример дать? :rolleyes: Не совсем пойму что значит оборачивать в классы. Мне следует создать классы игровых объектов одним из полей которых будет текстура, или какой-то отдельный класс, оперирующий всеми текстурами? И опять же - классы глобальными делать?
Отредактировано: 03.05.12 01:28
#907
Программир Всия Руси!
03.05.12 13:44
0
Kerbo
Далеко не лучший пример, но как вариант
http://zalil.ru/33173541
#908
03.05.12 16:36
0
Код
...следует создать классы игровых объектов одним из полей которых будет текстура...

И тогда каждый экземпляр класса будет хранить одну и ту же текстуру. Это явно не рационально.

Код
...какой-то отдельный класс, оперирующий всеми текстурами...

Определённо

Код
И опять же - классы глобальными делать

Я запихнул менеджер ресурсов в отдельный модуль и подключаю его везде где надо. Это в делфи, но в этих ваших плюсах я думаю можно сделать так же.
#909
Kerbo
05.05.12 00:29
0
Благодарю!
#910
DDDMax
08.06.12 16:46
0
Подскажите плиз:

1. Рисую тайлы так:
if(map[x][y]==TILE_GRASS) pTexGrass->Draw2D(x*iTileSize, y*iTileSize, iTileSize, iTileSize);
Тобишь квадратами. Можно ли средствами движка сделать плавный переход, от одного типа тайла к другому? Например с травы в песок.

2. Каким образом сделать фонарик в 2d, есть подозрение что нужно копать в сторону blend mode?
#911
irwin_noteam
09.06.12 15:11
0
Цитата(DDDMax @ 8.06.2012 - 14:46) [snapback]110411[/snapback]

Подскажите плиз:

1. Рисую тайлы так:
if(map[x][y]==TILE_GRASS) pTexGrass->Draw2D(x*iTileSize, y*iTileSize, iTileSize, iTileSize);
Тобишь квадратами. Можно ли средствами движка сделать плавный переход, от одного типа тайла к другому? Например с травы в песок.

2. Каким образом сделать фонарик в 2d, есть подозрение что нужно копать в сторону blend mode?


2. про фонарик уже был вопрос, поиск тебе в помощь.
1. Насколько мне известно нет. А что мешает замутить еще 1 тайл с переходом трава-песок?=)
#912
Программир Всия Руси!
12.06.12 01:25
0
Цитата
2. Каким образом сделать фонарик в 2d, есть подозрение что нужно копать в сторону blend mode?

Можно сделать так. Рисовать тайл четырмя спрайтами и задавать им по углам альфу 0, а в центре 255. Сделать это можно используя SetVerticesColors и флаг EF_VERTICES_COLOR.
#913
Dissent
18.06.12 19:22
0
Всем привет!
Решил освоить DGLE2.

Посмотрел уроки по движку, и у меня такой вопрос:
Как изменить окно программы, чтобы оно было без бордюра и без кнопок?
Надо своё окно из текстур, и кнопки из текстур.

Сделал из вашего примера анимацию девочки через форму и панель, bsNone,
(пример с InitToHandle), но заметил,
что анимация с формой, на панели происходит более прерывисто(подтормаживает), чем на консольном приложении.

Программирую на делфи, среда DelphiXE.
Опыта мало, со справкой на английском тоже тяжеловато, поэтому, по возможности прошу давать более подробные ответы, с примерами кода.

Спасибо за внимание!
Отредактировано: 19.06.12 01:38
#914
19.06.12 13:58
0
Можно создать средствами WinAPI свое окошко в нужном стиле - т.е. без non-client части (заголовок, рамка, кнопки - все, что обрабатывается не программой, а виндой).
Можно указать DGLE2 нужные параметры создания окна (если поддерживаются) или модифицировать его исходный код.
Можно перехватывать сообщения WM_NC*, приходящие окну (DGLE2 позволяет повесить фильтр сообщений, приходящих окну) - я так делал в этом проекте, например (алсо необходимые для сборки библиотеки, готовый бинарник). Правда, у меня почему-то не получилось заставить винду обрабатывать нажатия кнопок Minimize и Close, видимо недостаточно только лишь возвращать значение "это кнопка close" в ответ на WM_NCHITTEST. Получилось только сделать здоровенный заголовок-картинку.
#915
phomm
19.06.12 20:50
0
Приветствую здесь собравшихся.

Во-нулевых - большой грац Дрону за столь серьезную работу

Во-первых - есть небольшие косяки в демке 3дин2д для дельфи, почему-то пропущена строка смещения звука (в процедуре апдейта pSoundChannel.SetPan(Trunc((point.x + 60 - 460) * 0.2)); уже на дельфю подогнал из сиплюсового сурса) и в ней же косяк по камере, переменная зума вычисляется, но туда, куда она должна была пойти, она не пошла, там заглушено point2d(1,1) в результате чего камера не "ныряет" вверх - вниз. Прошу отвественного за код демок это подфиксить (могу и сам кинуть, но я там по своему усмотрению кое-чего переписал, например, выкинул из рендера в апдейт расчет разных величин для установки камеры и т.п., имо, им в апдейте больше место, хотя конечно на вкус ))

Во-вторых, главный, наверное, вопрос - как работать с материалами. Хотел бы испросить на примере демки опенгла, показать, как на тор нацепить текстуру с бампом (ведь даже графика есть), если это дело поддерживается двигом (я про учет карты высот для освещения), сам попробовал, колдуя над кодами демок и куря хедеры, код в аттаче. В результате материал прицепил (сужу по тому, что коммент строки материал.бинд дает иной резалт), но бампа не наблюдал, была мысль что надо юзать матричный стек, но по нему ещё меньше инфы, чем по материалам, да и разберусь ли я со стеком ))

В-третьих. Ещё один очень важный вопрос. Как делать хит-тест, было бы очень здорово на примере какой-либо демки показать либо ректангулярный хиттест (думаю очень просто, тем более что дебагмоуд с ректами для спрайтов уже есть), либо даже попиксельный, который, скорее всего, будет поддерживаться только для спрайтов, загруженных с пиксельчеком (в редакторе же есть такая опция). В любом случае коллизии/хиттест, особенно в режимах, когда камера гуляет, нужны практически в любой игре, да и динамический гуи из спрайтов будет легко реализуем.

В-четвертых. Жду как и все новой версии, на сайте указаны май-июнь, т.е. с учетом даже аутофтайма должен быть скоро )) Могу попробовать помочь с делфишными работами и проверками (демки уж многие запробовал менять по своим хотелкам), что одновременно будет для меня более глубоким знакомством с двигом, тем более что уже с 90% вероятностью для себя решил что свою GDI игру буду переводить именно на дгле2

Всем спасибо за терпение в прочтении простынки

#916
Dissent
20.06.12 23:48
0
Приветствую специалистов !

Кто-нибудь работал с редактором GUI на делфи?
Интересует, как выводить русский текст в редакторе в компонентах(почему-то только англ выводится)?

И можно ли обойтись без файла .dgui , или как например подгружать картинки в button или на форму, или менять свойства, текст в самих компонентах из проги?

Примерчик бы хоть нормальный где взять, а то и так с с++ пришлось на делфи перевести, но разобраться трудно :)



#917
Программир Всия Руси!
21.06.12 03:50
0
Dissent
Надо в редакторе GUI загрузить шрифт с поддержкой русского, назначить его стилю и этот стиль уже ко всем компонентам.
Картинки подгружаются просто надо в свойствах компонента их задать.
#918
phomm
22.06.12 02:15
0
Уважаемый Дрон, мы с Диссентом проверили как работают шрифты. Думаю, имеется баг - в гуиэдиторе шрифт назначается и контролы показывают русский текст, однако, сохранение дгуи-файла не имеет никакого эффекта, полученный дгуи-файл из некоего исходного файла, плюс добавленный шрифт -> сохранённый файл побайтно идентичен исходному.

Я решил попробовать способ похитрее - грузить шрифт динамически, на старте программы. Но столкнулся с тем, что у стайлпровайдера просто нет методов подгрузки шрифта, напрашивается резонный вопрос - как же тогда подцепляется шрифт к стайлпровайдеру в гуиэдиторе , в хедерах ответа не нашёл (с++ студию пока не могу установить, чтобы покопать сурц).

Вот значит такие дела, возможно, есть баг или просто малость не допилена сцепка стайлпровайдера и шрифта. Плюс по возможности на какие-то мои вопросы (выше) был бы рад ответам. Хотя я понимаю, конечно, что переезд на носу, все дела, но хотя бы после переезда послушать чего, сам пока или более глубоким изучением движка буду занят, либо допиныванием проектов , в том числе и для переноса на движок.
Отредактировано: 22.06.12 12:36
#919
Программир Всия Руси!
22.06.12 13:26
0
phomm
Хм был такой баг, т.к. ща лежит сборка годичной давности возможно в ней он еще присутствует. Т.к. я не могу назвать точного срока когда выйдет GUI Editor для новой версии (сама версия надеюсь уже скоро таки выйдет), то могу только предложить не использовать GUI, а делать все что надо своими руками.
Beta она такая Beta уж извините...
#920
phomm
22.06.12 17:58
0
Благодарю за ответ - сэкономили время на более глубоких изысканиях ))

Мои изыскания привели к тому, что сделать не получится.. ни у какого объекта нет интерфейса подключения шрифта.
Следовательно шрифт рисовать только руками, на неких вручную рисованных элементах, для которых придётся писать векторный расчёт хиттеста..
Печалька ))
#{{post.Index}}
{{post.Author.Login}}
{{post.CreatedDate | date:'dd.MM.yy HH:mm'}}
{{post.VotesRating}}
Отредактировано: {{post.UpdatedDate | date:'dd.MM.yy HH:mm'}}