Сообщения на форуме пользователя Andrey (147 стр.)
рендеринг ландшафта. подскажите пути оптимизации. | 12 мар. 2007 | 12:36 | #81 |
---|
Zemedelec
>Фрустум куллинг - больное место русского геймдева. Поиск по сайту поможет.
ты случайно не имеешь ввиду что правильный Фрустум куллинг к примеру проверяет к примеру AABB всего по 2 точкам, а не по 8, или что-то еще?
>Фрустум куллинг - больное место русского геймдева. Поиск по сайту поможет.
ты случайно не имеешь ввиду что правильный Фрустум куллинг к примеру проверяет к примеру AABB всего по 2 точкам, а не по 8, или что-то еще?
billboard - как сориентировать на камеру? | 12 мар. 2007 | 11:59 | #11 |
---|
progman
камера представлена 3 векторами Up,Dir,Right это ортонормированный базис по нему(и вектору Positiion) строится матрица камеры.
Up- вектор "верха" камеры;
Right- вектор направления камеры по X камеры;
все 3 вектора взаимно перпендикулярны, хот сами могут быть не перпендикулярны мировой системе координат.
>просто у мну в камере всего 2 переменные.
>положение камеры в мире и вектор взгляда.
их можно вроде вытянуть из матрицы.
камера представлена 3 векторами Up,Dir,Right это ортонормированный базис по нему(и вектору Positiion) строится матрица камеры.
Up- вектор "верха" камеры;
Right- вектор направления камеры по X камеры;
все 3 вектора взаимно перпендикулярны, хот сами могут быть не перпендикулярны мировой системе координат.
>просто у мну в камере всего 2 переменные.
>положение камеры в мире и вектор взгляда.
их можно вроде вытянуть из матрицы.
рендеринг в текстуру в OpenGl | 12 мар. 2007 | 11:50 | #8 |
---|
если карта держит FBO то использовать его, иначе попробывать pbuffer, ну если последний не держится, тогда уже вариант watchtower
billboard - как сориентировать на камеру? | 12 мар. 2007 | 11:44 | #8 |
---|
progman
У меня работает так:
position это середина биллбоарда.
У меня работает так:
// получаем указатель на массив из 4 вершин Vertex* v = particle.GetVertex(); const Camera& camera = render->GetCamera(); const Math3D::Vector3D &right = camera.GetRight(); const Math3D::Vector3D &up = camera.GetUp(); const Math3D::Vector3D &direction = camera.GetDirection(); // левый верхний Math3D::Vector3D qv0 = -right * particle.Width + up * particle.Height; // правый верхний Math3D::Vector3D qv1 = right * particle.Width + up * particle.Height; // правый нижний Math3D::Vector3D qv2 = right * particle.Width - up * particle.Height; // левый нижний Math3D::Vector3D qv3 = -right * particle.Width - up * particle.Height; v[0].vertex = particle.position + qv0; v[1].vertex = particle.position + qv1; v[2].vertex = particle.position + qv2; v[3].vertex = particle.position + qv3;
рендеринг ландшафта. подскажите пути оптимизации. | 9 мар. 2007 | 13:44 | #26 |
---|
progman
Втыкай в Occlusion Query.
начни с простейшего примера
http://www.codesampler.com/dx9src/dx9src_7.htm#dx9_occlusion_query
Втыкай в Occlusion Query.
начни с простейшего примера
http://www.codesampler.com/dx9src/dx9src_7.htm#dx9_occlusion_query
Ошибка при работе с I/O Stream | 9 мар. 2007 | 13:01 | #5 |
---|
Osiris
Говорил же я тебе вроде что пиши удобный класс враппер над FILE *, сразу с перегруженными функциями чтения/записи он сразу будет учитывать режим открытия файла, еще и перегрузить операторы << >> в стиле std::fstream можно. Уйдет много проблем
не достало тебя писать fread( &CGUTemp.m_cUnitModel, sizeof(char), 40, UnitsList ); ? sizeof подставлять все время разный?
Говорил же я тебе вроде что пиши удобный класс враппер над FILE *, сразу с перегруженными функциями чтения/записи он сразу будет учитывать режим открытия файла, еще и перегрузить операторы << >> в стиле std::fstream можно. Уйдет много проблем
не достало тебя писать fread( &CGUTemp.m_cUnitModel, sizeof(char), 40, UnitsList ); ? sizeof подставлять все время разный?
ShaderX что такое и с чем его едят? | 6 мар. 2007 | 12:10 | #17 |
---|
rtm
Спасибо.
Спасибо.
Справка по MAX SDK | 5 мар. 2007 | 13:45 | #1 |
---|
Constantin
а тут искал 3dsMax8SdkHelp.chm ?
у меня maxsdk стоит вот тут:
C:\Program Files\Autodesk\3dsMax8\maxsdk\help
в это какталоге найдешь файл на 26 метров...
а тут искал 3dsMax8SdkHelp.chm ?
у меня maxsdk стоит вот тут:
C:\Program Files\Autodesk\3dsMax8\maxsdk\help
в это какталоге найдешь файл на 26 метров...
Octree реализация | 22 фев. 2007 | 20:20 | #28 |
---|
Noorma_yeah!
Ух и много ты кода запостил :(
Ух и много ты кода запостил :(
D3DXCreateMesh - как правильно юзать? | 22 фев. 2007 | 19:16 | #6 |
---|
ShadowTM
>А если я пользуюсь не FVF a DIRECT3DVERTEXDECLARATION9
тогда нужно смотреть находить соответствия FVF и DIRECT3DVERTEXDECLARATION9
к примеру
>А если я пользуюсь не FVF a DIRECT3DVERTEXDECLARATION9
тогда нужно смотреть находить соответствия FVF и DIRECT3DVERTEXDECLARATION9
к примеру
//D3DFVF_DIFFUSE | D3DFVF_XYZ | D3DFVF_NORMAL соответсвует: // описание формата вершины const D3DVERTEXELEMENT9 dwDecl[] = { // Stream Offset Type Method UsageUsage Index {0, 0, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0 }, {0, 12, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_NORMAL, 0 }, {0, 24, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0 }, D3DDECL_END() }; // а вот если нужен tangent и binormal то вроде нет такой комбинация флагов FVF |
Скелетка для всех:) Выложил либу v1.0. | 21 фев. 2007 | 19:47 | #19 |
---|
Frankinshtein
поддержку OpenGL рендера не будешь добавлять?
поддержку OpenGL рендера не будешь добавлять?
Тангент и бинормаль | 19 фев. 2007 | 19:20 | #3 |
---|
mrX
а размер файла с мешем?
а размер файла с мешем?
Опрос (комментарии) | 19 фев. 2007 | 19:20 | #14 |
---|
mrX
а это с точки зрения работы в 3D Studio Max.
а это с точки зрения работы в 3D Studio Max.
Скелетная анимация в OpenGL на MVS | 19 фев. 2007 | 13:31 | #7 |
---|
VantuZZ
а что тебе не понятно? формируется файл *.cfg вот его и давай в виде командной строки там грузится скелет, анимация материалы, меши. Я сделал свой конвертатор и сложил все в файл.
а что тебе не понятно? формируется файл *.cfg вот его и давай в виде командной строки там грузится скелет, анимация материалы, меши. Я сделал свой конвертатор и сложил все в файл.