3d Graphics, DirectX, OpenGL, Software |
Здравствуйте, гость ( Вход | Регистрация )
3d Graphics, DirectX, OpenGL, Software |
23.12.2003 - 19:22
Вставить ник | Быстрая цитата | Сообщение
#1
|
|
void* Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 |
Решил создать отдельную тему по 3Д графике.
Сразу подкину 1й вопрос: Пиплы, какие параметры надо ставить в D3DRS_POINTSCALE_A, D3DRS_POINTSCALE_B, D3DRS_POINTSCALE_C для того, чтобы полученный спрайт скалился как обычная геометрия? Че-то уже все комбинации перепробовал - муть какая-то.... :-\ |
|
|
23.12.2003 - 21:39
Вставить ник | Быстрая цитата | Сообщение
#2
|
|
Unknown Группа: Модератор Сообщений: 405 Регистрация: 29.09.2003 Пользователь №: 74 |
inline DWORD FtoDW( FLOAT f ) { return *((DWORD*)&f); }
// D3DRS_POINTSPRITEENABLE, TRUE D3DRS_POINTSCALEENABLE, TRUE D3DRS_POINTSIZE - FtoDW(0.08f) D3DRS_POINTSIZE_MIN - FtoDW(0.00f) D3DRS_POINTSCALE_A - FtoDW(0.00f) D3DRS_POINTSCALE_B - FtoDW(0.00f) D3DRS_POINTSCALE_C - FtoDW(1.00f) // ^_^ Сообщение отредактировано someone - 23.12.2003 - 21:46 |
|
|
23.12.2003 - 22:08
Вставить ник | Быстрая цитата | Сообщение
#3
|
|
Unknown Группа: Модератор Сообщений: 405 Регистрация: 29.09.2003 Пользователь №: 74 |
Феникс я так и не пойму, почему тебе всё не было ни разу на #development ?
|
|
|
24.12.2003 - 08:04
Вставить ник | Быстрая цитата | Сообщение
#4
|
|
void* Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 |
Оказалось как всегда просто... При чем я смотрел именно этот экземпл по PS... Че-то казалось, что тут тоже криво.... Спасибо.
#Development прорписал в автоджойн. |
|
|
24.12.2003 - 14:45
Вставить ник | Быстрая цитата | Сообщение
#5
|
|
void* Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 |
Второй вопрос:
Ставить ли система D3D ограничение на макс. кол-во лампочек, как GL? Или можно до бесконечности? |
|
|
25.12.2003 - 16:14
Вставить ник | Быстрая цитата | Сообщение
#6
|
|
Unknown Группа: Модератор Сообщений: 405 Регистрация: 29.09.2003 Пользователь №: 74 |
Лимита нет, разве что если порядковый номер источника в методе SetLight привысит макс. допустимое значение типа DWORD. Вот его видимо за ограничение и надо взять, но я думаю что такого числа источников освещения не может быть не в одной сцене игры.
P.S. Прошу прощения за то, что долго не отвеча, просто в минус ушёл и дяди блокировку поставили ^_^ . |
|
|
25.12.2003 - 17:34
Вставить ник | Быстрая цитата | Сообщение
#7
|
|
Unknown Группа: Модератор Сообщений: 405 Регистрация: 29.09.2003 Пользователь №: 74 |
Кто работал с пискельными шейдерами версий ps extended software?
Чёто не пашут они, хотя говорят, что такие шейдеры от видюхи не зависят, ибо они soft. |
|
|
25.12.2003 - 18:27
Вставить ник | Быстрая цитата | Сообщение
#8
|
|
void* Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 |
Спасибо за ответ.
Хм... честно говоря, вообще с пиксельными шейдерами не работал... |
|
|
27.12.2003 - 15:50
Вставить ник | Быстрая цитата | Сообщение
#9
|
|
Unknown Группа: Модератор Сообщений: 405 Регистрация: 29.09.2003 Пользователь №: 74 |
Кто работал с Shadow Maps в DX ?
|
|
|
27.12.2003 - 22:01
Вставить ник | Быстрая цитата | Сообщение
#10
|
|
Энтузиаст Группа: Участник Сообщений: 462 Регистрация: 30.09.2003 Пользователь №: 143 |
2Phoenix:
А как ты без шейдеров-то??? Читал Help, меня ими сразу "пугать" начали... может это другие (вершинные разные, еще чё-то) Сообщение отредактировано Колбасьев - 27.12.2003 - 22:03 |
|
|
28.12.2003 - 11:50
Вставить ник | Быстрая цитата | Сообщение
#11
|
|
Unknown Группа: Модератор Сообщений: 405 Регистрация: 29.09.2003 Пользователь №: 74 |
Есть масса способов обойти шейдеры, местами лучше не использовать шейдеры, а посчитать всё вручную. Тем самым большее число пользователей сможет запутсить твоё творение. Т.к большинство старых карт не поддерживают пиксельные шейдеры. ( GeF1-2, TNT, Ati 7xxx )
|
|
|
22.02.2004 - 20:52
Вставить ник | Быстрая цитата | Сообщение
#12
|
|
Звезда форума Группа: Участник Сообщений: 384 Регистрация: 7.10.2003 Пользователь №: 340 |
Такой вопрос: кто-нибудь работал с OpenGL?? А то вот решил 3д графику изучить, и решил выбрать OpenGL (кстати, объясните чем OpenGL от DirectX отличается(что лучше и т.п.) ). Я работаю на Делфи, поэтому желательно чтобы примеры и всё такое тоже были на Делфи.
В общем помогите изучить OpenGL. (Сам я чувствую быстро не разберусь). P.S.: Сейчас использую компонент GL Scene. с ним легче, но не знаю, может из-за него сильно снижается производительность. |
|
|
22.02.2004 - 21:04
Вставить ник | Быстрая цитата | Сообщение
#13
|
|
void* Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 |
Вообще, 3Д программинг и дельфи - вещи весьма несовместимые, потеря производительности будет капитальная. По ГЛу есть очень неплохой туториал, но на MSVC, плюс в MSDN есть исчерпывающая документация. А по 3Д именно в Дельфи - это к Колбасьеву, он чем-то похожим занимался.
Теперь о различиях. Гл(как мне показалось) чуть быстрее, и проще в освоении, чем ДХ, зато ДХ предоставляет всю нужную векторную/матричную математику(хотя и самому написать - не проблема). В ДХ есть некоторые явления, которых я не видел в ГЛ(м.б. по ламерству), например работа с мешами и корректные поинтспрайты(в ГЛе они работали сверхтормозно по каким-то причинам, м.б. по все тому же ламерству). Стандарт ДХ меняется постоянно, ГЛ более-менее устойчив. На первый взгляд все.... |
|
|
22.02.2004 - 21:21
Вставить ник | Быстрая цитата | Сообщение
#14
|
|
Постоялец форума Группа: Участник Сообщений: 616 Регистрация: 29.09.2003 Пользователь №: 105 |
Цитата(Phoenix @ 22.02.2004 - 20:04) [color=darkred]Вообще, 3Д программинг и дельфи - вещи весьма несовместимые, потеря производительности будет капитальная. По ГЛу есть очень неплохой туториал, но на Неправильный ответ. Дело не в дельфи, дело в руках.. ]]>http://snow.prohosting.com/terranin]]> PS: А DX лично мне больше нравится .. Сообщение отредактировано Jaguard - 22.02.2004 - 21:23 |
|
|
22.02.2004 - 21:32
Вставить ник | Быстрая цитата | Сообщение
#15
|
|
Звезда форума Группа: Участник Сообщений: 384 Регистрация: 7.10.2003 Пользователь №: 340 |
Спасибо. А ещё вопрос:
Может я и ошибаюсь, но по-моему Direct3D поддерживают не все карты (т.е. если карта не поддерживает Direct3D, то приложение точно не запустится). А при использовании OpenGL вроде поддерживаются даже не 3D карты, но не все функции доступны. Соответственно получается что у OpenGL меньше требований к оборудованию. Поправьте если что не так. |
|
|
22.02.2004 - 21:59
Вставить ник | Быстрая цитата | Сообщение
#16
|
|
Постоялец форума Группа: Участник Сообщений: 616 Регистрация: 29.09.2003 Пользователь №: 105 |
Таких карт, которые не поддерживают D3D уже не бывает.. А то, что в софтовом режиме твоя программа запустится, это еще не значит, что тебя это устроит. Ну, если только 1-2 фпс тебя устроит..
Кстати, д3д это, помимо того, что умеет огл, еще и Direct Sound, Direct Play(мультиплеерные фишки), установка видеорежимов(огл этого не умеет), ну и прочее. Вообщем, all-in-one, а потому удобно. Сообщение отредактировано Jaguard - 22.02.2004 - 22:04 |
|
|
22.02.2004 - 22:56
Вставить ник | Быстрая цитата | Сообщение
#17
|
|
Энтузиаст Группа: Участник Сообщений: 462 Регистрация: 30.09.2003 Пользователь №: 143 |
Вот я и вновь на форуме ^_^ .
2Agent Smith: Вообще, больше тебе придется мучиться с другими аспектами программирования 3д графики (если конечно не просто кубик крутить надо, а хотя бы модель загрузить). Поэтому во многих играх и программах можно выбирать "рендер", так как громадная часть кода - общая. На Дельфи - нормальный выбор - у меня на 700МГц > 100 фпс. Не думаю, что на Си написанная прога будет много быстрей при тех же данных, так что Цитата(Jaguard Дата 22.02.2004 - 20:21 ) Дело не в дельфи, дело в руках.. P.S. OpenGL-ем не занимался, пока... |
|
|
23.02.2004 - 00:37
Вставить ник | Быстрая цитата | Сообщение
#18
|
|
void* Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 |
Цитата Неправильный ответ. Дело не в дельфи, дело в руках.. *про себя* Че-то в последнее время все вспоминают мои руки.... Не к добру... *вслух* А при чем тут руки? Дельфи ориентирован на GUI, который к играм в своем изначальном виде(WINAPI/VCL/MFC) применим крайне слабо. А дельфи и вовсе, по сравнению с MSVC(AFAIR, Колбасьев, поправь, если я ошибся) не умеет отключать VCL от проекта, если он не нужен, а тащить его за собой - просто незачем. PS. Слухай, а ты на дельфи игры прогал? |
|
|
23.02.2004 - 11:13
Вставить ник | Быстрая цитата | Сообщение
#19
|
|
Unknown Группа: Модератор Сообщений: 405 Регистрация: 29.09.2003 Пользователь №: 74 |
Да н двиг пишет
|
|
|
23.02.2004 - 12:12
Вставить ник | Быстрая цитата | Сообщение
#20
|
|
Звезда форума Группа: Участник Сообщений: 384 Регистрация: 7.10.2003 Пользователь №: 340 |
Цитата(Phoenix @ 22.02.2004 - 23:37) *вслух* А при чем тут руки? Дельфи ориентирован на GUI, который к играм в своем изначальном виде(WINAPI/VCL/MFC) применим крайне слабо. А дельфи и вовсе, по сравнению с MSVC(AFAIR, Колбасьев, поправь, если я ошибся) не умеет отключать VCL от проекта, если он не нужен, а тащить его за собой - просто незачем. Во-первых, VCL в Delphi можно не использовать. Если нужно, используй функции WinAPI без всякого VCL. Это в Delphi возможно. Во-вторых, для начинающих программеров в области 3D графики VCL крайне удобен. Я имею ввиду разные компоненты: DelphiX (Для работы с DirectX), GLScene (Для работы с OpenGL). Эти компоненты просто незаменимы для новичков (Знаю по собственному опыту). Итог: Delphi подходит как для новичков так и для профессионалов в области разработки игр. А для работы с C++ нужно полностью владеть WinAPI, а также всеми возможностями 3D библиотек. Если даже игры на C++ работают и быстрее чем на Delphi, то совсем не на много. Можно сделать вывод, что Delphi намного удобнее, быстрее в освоении, чем C++. |
|
|
Текстовая версия | Сейчас: 26.12.2024 - 19:03 |