GameDev.ru
/ GameDev.ru / Пользователи / Andrey / Сообщения на форуме пользователя Andrey (174 стр.)

Сообщения на форуме пользователя Andrey (174 стр.)

Builder6.031 мая 200619:10#31
Serega_mexanik
посмотри тут
http://www.gamedev.ru/forum/?group=12&topic=193
там у каьалоге bin есть утелитка для преобразования формата библиотек...
Кто нибудь шарит в XML? Прошу помощи, у самого уже не варит...31 мая 200615:28#8
Zavulon666
>Возишься с XML, этим мертворожденным выкидышем от мелкософта =)
да... нет слов...
Проблема с CG Tutorial Examples31 мая 200611:28#1
Paltr
а расширения проинициализированы?
BSP дерево и изменяемые объекты31 мая 200610:41#6
Chizh A.V.
>... а как же быть если видна часть полигона?
BSP дерево разбивает полигон и заносит половины в узлы.
если не видна половина то рендерится весь.
Кое-какая задача по загрузке уровня(читаем пост), какой формат посоветуете 3ds или ase. Есть ли альтернативы ?31 мая 20069:54#5
banovan
>Неужели ase настолько плох ? Какие у этого формата минусы ?
он стандартен он может не поддерживать то что нужно тебе.
это большой тормоз при распарсивании больших сцен со сложной геометрией.
Вопрос по Borland C++ 5.0, работает ли vector30 мая 200617:34#5
slyfox
>C Borland 6.0
а что такой есть????? (не Дебилдер с VCL)
ну а если скинуть туда файлы vector, iterator, memory и т.д. т.е. все что тянет vector то будет работать?
D3DXCreateMesh - как правильно юзать?30 мая 200616:44#3
progman
А что непонятно?
примерно так:
ID3DXMesh *mesh = NULL;
HRESULT hr = D3DXCreateMeshFVF(число_полигонов,
число_вершин,
D3DXMESH_VB_DYNAMIC,  // ты будешь буфер лочить возможно значит динамический
D3DFVF_CUSTOMERVERTEX, // твой офрмат вершин
pDevice, // IDirect3DDevice9 *
&mesh);
Вопрос по Borland C++ 5.0, работает ли vector30 мая 200615:13#1
ilusha_nil
1)
Насколько я поримаю это 1996 год 1 из последгних стандартов языка С++ был принят в 1998.
Отсюда следует сделать вывод.
но эта среда поддерживает такие операторы как
static_cast
const_cast
reinterpret_cast
dynamic_cast
я думаю vector рабоать должен. Интерено, а в поставке он поставляется? самому интересно узнать как это будет работать std::vector на таком пещерном компиляторе.
2) Я точно не помню но скорей всего как обыно File-New Project он вроде сам исходник создаст, а там:
int main(int argv, char **argv)
{
return 0;
}
p.s. Инетресно чего именно такой пещерный компилятор потребовался?
Обработка строк в С29 мая 200613:51#13
Димка
>Снова ошибаешься. Это std::string не должен никогда встречаться в игровом коде. Впрочем, это уже offtop. Недавно терли на DTF :)
ух ты интересно, а поподробнее можно, ссылочку или еще чсто нибудь?
Прошу проверить перевод GLSL -> HLSL и несколько вопросов29 мая 20069:42#2
keltar
Спасибо! точно ты прав не заметил...
Стоит ли покупать книгу Герберта Шилдт'а по C++?28 мая 200618:20#48
slyfox
в общем как справочник Шилд очень хорошие книги выпускает.
>Все это общие слова, но Вы посмотрите на книжные полки - серьезной литературы
>ноль! Не обескураживающе?
Да серьезных книг на полках мало.
Прошу проверить перевод GLSL -> HLSL и несколько вопросов28 мая 200618:12#0
Привет всем!!!
В шедерах я не особо силен так что прошу не пинать.
Вот код GLSL
// Пиксельный
varying float intensity_sq, intensity;

uniform sampler2D s_texture_0;
uniform sampler2D s_texture_1;

uniform vec4 horizon;

void main()
{
   vec4 clouds_0 = texture2D(s_texture_0, gl_TexCoord[0].xy);
   vec4 clouds_1 = texture2D(s_texture_1, gl_TexCoord[1].xy);

   vec4 clouds = (clouds_0 + clouds_1) * intensity_sq;

   vec4 cloud_color = vec4((1.0 - intensity) * horizon.x, (1.0 - intensity) * horizon.y, intensity * horizon.z, 0.0);

   gl_FragColor = cloud_color * (1.0 - clouds.x) + clouds;
}

// Вершинный

varying float intensity_sq, intensity;

uniform vec4 bbox;
uniform float time;

void main()
{
   gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;

   gl_TexCoord[0] = vec4(gl_Vertex.x / 2.0 + time,       gl_Vertex.z / 2.0, 0.0, 0.0);
   gl_TexCoord[1] = vec4(gl_Vertex.x       + time / 2.0, gl_Vertex.z,       0.0, 0.0);

// Get the vertex height and scale it to 0 - 1 range.
   intensity    = gl_Vertex.y / bbox.y;
   intensity    = exp(clamp(intensity, 0.0, 1.0)) / 1.8;
   intensity_sq = intensity * intensity;
}
вот то что я переделал
float4x4 worldViewProj;
float4x4 world;
texture Texture0;
texture Texture1;
float time;
float intensity_sq, intensity;
float4 horizon;
float4 bbox;

// Texture samler
sampler2D modelTextureSampler0 = sampler_state
{
    Texture = (Texture0);
    MIPFILTER = LINEAR;
    MAGFILTER = LINEAR;
    MINFILTER = LINEAR;
};

// Texture samler
sampler2D modelTextureSampler1 = sampler_state
{
    Texture = (Texture1);
    MIPFILTER = LINEAR;
    MAGFILTER = LINEAR;
    MINFILTER = LINEAR;
};

//Application to vertex shader
struct VS {  // описание вершинного шейдера
    float4 position : POSITION0;
    float3 normal   : NORMAL0;
    float2 texCoord0 : TEXCOORD0;
    float2 texCoord1 : TEXCOORD1;
};

//Vertex shader to pixel shader
struct PS { // описание пиксельного шейдера
    float4 position : POSITION0;
    float2 texCoord0 : TEXCOORD0;
    float2 texCoord1  : TEXCOORD1;
};

//Vertex Shader
void VS_shader( in VS IN, out PS OUT)
{
    OUT.position = mul(IN.position, worldViewProj);
    IN.normal    = normalize(mul(IN.normal, world));

    intensity    = OUT.position.y / bbox.y;
   	intensity    = exp(clamp(intensity, 0.0, 1.0)) / 1.8;
   	intensity_sq = intensity * intensity;

   	OUT.texCoord0 = float4(OUT.position.x / 2.0 + time, OUT.position.z / 2.0, 0.0, 0.0);
   	OUT.texCoord1 = float4(OUT.position.x + time / 2.0, OUT.position.z, 0.0, 0.0);
}

//Pixel Shader
float4 PS_shader(in PS IN) : COLOR
{
   float4 clouds_0 = tex2D(modelTextureSampler0, IN.texCoord0);
   float4 clouds_1 = tex2D(modelTextureSampler1, IN.texCoord1);

   float4 clouds = (clouds_0 + clouds_1) * intensity_sq;

   float4 cloud_color = float4((1.0 - intensity) * horizon.x, (1.0 - intensity) * horizon.y, intensity * horizon.z, 0.0);

   return cloud_color * (1.0 - clouds.x) + clouds;
}

//Techniques
technique Sky
{
    pass p0
    {
        vertexshader = compile vs_1_1 VS_shader();
        pixelshader = compile ps_2_0 PS_shader();
    }
}
Скажите правильно ли я  сделал перевод, просто в результате он не работает, в примере под OpenGL это шейдер реализции динамических облаков, с использованием шума Перлина. Но в Direct3D никак не двигается текстура на кубике :( он желтого цвета, хотя ошибок компиляции нет.
Но в результате вместо движущийся текстуры только кубик желтого цвета...

Правка: 28 мая 2006 18:13

Стоит ли покупать книгу Герберта Шилдт'а по C++?28 мая 200615:05#44
slyfox
>Шилдт являлся членом комитета ANSI/ISO по C++. Туда что, кого попало берут?
об этом можно подумать прежде чем так отзываться об авторе, сама много книг написала???? ;) или опыт программиста достаточно высок?
VC++6 Debug Release28 мая 200614:46#13
Sniper
>В СИ начинается с 1 а в Delphi с 0 видать потому и написал так
да ну вы делифисты даете :)))))
Как сохранять объекты Direct3D?27 мая 20060:11#1
DNis74
смотри DirectX SDK вот это:
ID3DXFile
ID3DXFileData
ID3DXFileEnumObject
ID3DXFileSaveData
ID3DXFileSaveObject

Следующие темы >>

2001—2012 © GameDev.ru — Разработка игр