Сообщения на форуме пользователя Andrey (143 стр.)
Демка ландшафта с лодами. | 26 мар. 2007 | 16:15 | #10 |
---|
eHomo
отослал 2 главных файла.
отослал 2 главных файла.
Демка ландшафта с лодами. | 26 мар. 2007 | 15:29 | #8 |
---|
eHomo
Вообще с скорость API судя по тестам странная что-то... вроде nVidia одинаково держит оба API но там скорость поменьше...
тебе как с исходниками быть?
У меня мультирендер для OpenGL использую GL_ARB_vertex_buffer_objects.
при нужном лоде выставляю свой индексный буфер,стартовую вершину, и число поликов.
при построении дерева создаю свой индексный буфер для каждого лода(просто с пропуском индексов).
Вообще с скорость API судя по тестам странная что-то... вроде nVidia одинаково держит оба API но там скорость поменьше...
тебе как с исходниками быть?
У меня мультирендер для OpenGL использую GL_ARB_vertex_buffer_objects.
при нужном лоде выставляю свой индексный буфер,стартовую вершину, и число поликов.
при построении дерева создаю свой индексный буфер для каждого лода(просто с пропуском индексов).
Демка ландшафта с лодами. | 26 мар. 2007 | 15:07 | #4 |
---|
dub
угу спасибо с дырами все ясно...
угу спасибо с дырами все ясно...
Демка ландшафта с лодами. | 26 мар. 2007 | 14:46 | #2 |
---|
eHomo
Спасибо за тест.
>но хотелось бы исходники глянуть
Конечно ужасный трещины заделаю, и сделаю нормальное текстурирование
Но зато быстро как считаешь?
>но хотелось бы исходники глянуть
что из них интересует?
Спасибо за тест.
>но хотелось бы исходники глянуть
Конечно ужасный трещины заделаю, и сделаю нормальное текстурирование
Но зато быстро как считаешь?
>но хотелось бы исходники глянуть
что из них интересует?
почему "рендер" у Irrlicht хуже чем у OGRE. | 26 мар. 2007 | 14:22 | #7 |
---|
а в случае OpenGL не используется расширение GL_ARB_vertex_buffer_objects
Демка атмосферы (Volume clouds II) | 26 мар. 2007 | 13:48 | #20 |
---|
Ilia
Красиво, 37 FPS.
GeForce 6600 256 Мб.
Красиво, 37 FPS.
GeForce 6600 256 Мб.
Демка ландшафта с лодами. | 26 мар. 2007 | 13:24 | #0 |
---|
Привет всем!
Прошу оценить и протестировать демку ландшафт с лодами.Теперь заделаны щели между лодами.
Демка работает как под Direct3D9 так и под OpenGL, выбор рендера в файле render.cfg в секции [Render]
[Render]
name OpenGL(Direct3D)
по умолчанию стоит Direct3D
Сразу отмечу недостатки:
- отсутствие в демкенормального продвинутого текстурирования;В демке я не делал смешивания текстур по маске, но такая функциональность присутствует.
- иногда видны подтянутости текстуры при заделывании щелей;
- дублирование вершин в вершинном буфере(поэтому проблематично грузить карты больше 1024x1024);
- присутствие трещин при смене лода.
Клавиши управления:
движение - стрелки вверх,вниз,вправо,влево.
"R" - показать сетку.
"B"-показать/скрыть BBox'ы узлов.
Прошу протестировать на 2 рендерах (Direct3D и OpenGL) написать FPS для каждого из них и тип видеокарты.
Желательно и процессор(хотя он почти не загружен в реализации)
Прошу оценить и протестировать демку ландшафт с лодами.Теперь заделаны щели между лодами.
Демка работает как под Direct3D9 так и под OpenGL, выбор рендера в файле render.cfg в секции [Render]
[Render]
name OpenGL(Direct3D)
по умолчанию стоит Direct3D
Сразу отмечу недостатки:
- отсутствие в демке
- иногда видны подтянутости текстуры при заделывании щелей;
Клавиши управления:
движение - стрелки вверх,вниз,вправо,влево.
"R" - показать сетку.
"B"-показать/скрыть BBox'ы узлов.
Прошу протестировать на 2 рендерах (Direct3D и OpenGL) написать FPS для каждого из них и тип видеокарты.
Желательно и процессор(хотя он почти не загружен в реализации)
Хочу поблагодарить следующих людей помогавших мне консультацией и исправлением ошибок:
frol
Zeux
sсynet
сама демка.
Дальнейшее развитие это текстурирование освещение и динамическая загрузка при движении камеры.
Кстати, заделываю щели посредством рисования полос полигонов по краям патчей. Как такой способ называется? Случайно не юбочка?
Правка - обновил пост
Правка: 6 ноя. 2010 17:12
вопрос по массивам | 23 мар. 2007 | 18:10 | #12 |
---|
Minsk and Boo
std::vector == динамическому массиву + не надо сделать за памятью
std::vector == динамическому массиву + не надо сделать за памятью
Как отследить почему падает glDrawElements ? | 23 мар. 2007 | 17:58 | #9 |
---|
0r@ngE
>интересно, а glError тут помогает? Чисто спросил
может быть возможно выдаст GL_INVALID_OPERATION.
>интересно, а glError тут помогает? Чисто спросил
может быть возможно выдаст GL_INVALID_OPERATION.
вопрос по массивам | 23 мар. 2007 | 10:50 | #9 |
---|
OpenGL
обращение к данным в памяти выделенной статически float[1000] быстрей чем если бы эти данные находились бы в динамической памяти выделенной new(std::vector)/malloc
просто разница в ассемблерных командах и вроде в косвенной адресации.
обращение к данным в памяти выделенной статически float[1000] быстрей чем если бы эти данные находились бы в динамической памяти выделенной new(std::vector)/malloc
просто разница в ассемблерных командах и вроде в косвенной адресации.
Как отследить почему падает glDrawElements ? | 23 мар. 2007 | 10:39 | #1 |
---|
Vulcan
>но при проверке такого не наблюдается.
а как проверяешь? если glGetError то врядли это поможет, хотя не уверен.
Сложновато это возможно тебе поможет gDEBugger.
Ошибка типичная неверно пишешь/обращаешься к данным в видеопамяти.
>но при проверке такого не наблюдается.
а как проверяешь? если glGetError то врядли это поможет, хотя не уверен.
Сложновато это возможно тебе поможет gDEBugger.
Ошибка типичная неверно пишешь/обращаешься к данным в видеопамяти.
Правда ли что программы написанные под более ранние версии Directx не работают в Directx10 | 22 мар. 2007 | 11:59 | #21 |
---|
LIVe
>Я даже не говорю как там будет обстоять дело с DOS играми.
не запускаются в полноэкранном режиме :(
>Я даже не говорю как там будет обстоять дело с DOS играми.
не запускаются в полноэкранном режиме :(
Вычисление BoundingBox для сабсета Х - модели | 22 мар. 2007 | 11:56 | #2 |
---|
Osiris
смотри внимательней SDK!!!!
ID3DXMesh::GetAttributeTable
далее поиск по форуму:
http://www.gamedev.ru/code/forum/?id=56105
http://www.gamedev.ru/code/forum/?id=32217
http://www.gamedev.ru/code/forum/?id=52802
ну вот примерно так:
далее выципляешь по этим данным куски геометрию из меша, дальше простет AABB, на этот вопрос у меня ушло 5 мин...
смотри внимательней SDK!!!!
ID3DXMesh::GetAttributeTable
далее поиск по форуму:
http://www.gamedev.ru/code/forum/?id=56105
http://www.gamedev.ru/code/forum/?id=32217
http://www.gamedev.ru/code/forum/?id=52802
ну вот примерно так:
DWORD NumTable; D3DXATTRIBUTERANGE* pAttrTable; // Получаем количество таблиц pLocalMesh->GetAttributeTable(NULL, &NumTable); // Создаем массив таблиц pAttrTable = new D3DXATTRIBUTERANGE[NumTable]; // Получаем таблицы аттрибутов pLocalMesh->GetAttributeTable(pAttrTable, NULL);
Помогите с передачей констант в шейдеры 1.1 (DirectX 9, C++) | 21 мар. 2007 | 19:31 | #14 |
---|
X9900
Вот так с таблицей констант:
Вот так с таблицей констант:
Помогите с передачей констант в шейдеры 1.1 (DirectX 9, C++) | 21 мар. 2007 | 19:24 | #13 |
---|
X9900
тебе нужно как я понял передать вот что в вершинный шейдер:
делается это так:
и в пиксельный:
делается это так:
Тебе остается определить все необходимые перменные в коде C++ и передать так как я показал.
либо используй таблицу констант которую ты создал. Если непонятно могу написать с ней.
тебе нужно как я понял передать вот что в вершинный шейдер:
float4x4 matWorldViewProjection; float4x4 matWorld; float4 vecLightDir;
g_pd3dDevice->SetVertexShaderConstantF(0, &matWorldViewProjection._11, 4); g_pd3dDevice->SetVertexShaderConstantF(4, &matWorldViewProjection._11, 4); g_pd3dDevice->SetVertexShaderConstantF(8, &vecLightDir.x, 4);
float4 ambientColor; float ambientIntensity; float4 diffuseColor; float diffuseIntensity;
g_pd3dDevice->SetPixelShaderConstantF(0, &ambientColor.x, 4); g_pd3dDevice->SetPixelShaderConstantF(4, &ambientIntensity, 1); g_pd3dDevice->SetPixelShaderConstantF(5, &diffuseColor.x, 4); g_pd3dDevice->SetPixelShaderConstantF(9, &diffuseIntensity, 1);
либо используй таблицу констант которую ты создал. Если непонятно могу написать с ней.