Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Xors3D

Xors3D Графический движок с поддержкой DirectX9

Ответ
 
Опции темы
Старый 11.12.2011, 17:42   #91
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вопросы про Xors3D

DeltaYaw же
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ANIK123 (11.12.2011)
Старый 15.12.2011, 22:13   #92
ANIK123
Знающий
 
Аватар для ANIK123
 
Регистрация: 29.11.2010
Сообщений: 244
Написано 31 полезных сообщений
(для 49 пользователей)
Ответ: Вопросы про Xors3D

Спасибо!)
А как игру на паузу поставить? Остановить симуляцию физики и т п, хотя Я приблезительно представляю себе как это реализовать но все же скажите как Вы это делаете)
И еще (наверн самый даунский Мой вопрос): как пользоваться дельта-таймом?)))
__________________
Intel Core i3-4005U (1.7 ГГц), 4 ГБ ОЗУ, nVidia GeForce 940M 4 ГБ, Win8.1
(Offline)
 
Ответить с цитированием
Старый 15.12.2011, 23:04   #93
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Ответ: Вопросы про Xors3D

делаешь внутренний цикл :
While pause=true
    ...обновляем только паузу
Wend
(Offline)
 
Ответить с цитированием
Старый 30.12.2011, 13:57   #94
ANIK123
Знающий
 
Аватар для ANIK123
 
Регистрация: 29.11.2010
Сообщений: 244
Написано 31 полезных сообщений
(для 49 пользователей)
Ответ: Вопросы про Xors3D

Спасибо, а как на счет дельты?)
__________________
Intel Core i3-4005U (1.7 ГГц), 4 ГБ ОЗУ, nVidia GeForce 940M 4 ГБ, Win8.1
(Offline)
 
Ответить с цитированием
Старый 12.01.2012, 21:47   #95
Spy4433
ПроЭктировщик
 
Аватар для Spy4433
 
Регистрация: 16.04.2008
Сообщений: 161
Написано 36 полезных сообщений
(для 63 пользователей)
Ответ: Вопросы про Xors3D

Всем добрый вечер.

Сел изучать шейдеры в RenderMonkey
float4x4 matViewProjection : ViewProjection;

struct VS_INPUT 
{
   float4 Position : POSITION0;
   float2 Txr1: TEXCOORD0;
};

struct VS_OUTPUT 
{
   float4 Position : POSITION0;
   float2 Txr1: TEXCOORD0;
};

VS_OUTPUT Effect_Group_1_myeffect_Pass_0_Vertex_Shader_vs_main( VS_INPUT Input )
{
   VS_OUTPUT Output;

   Output.Position = mul( Input.Position, matViewProjection );
   Output.Txr1=Input.Txr1;
   return( Output );
   }

tex2D(Texture0,inTxr1);

float4 Effect_Group_1_myeffect_Pass_0_Pixel_Shader_ps_main( float4 inDiffuse: COLOR0,
                float2 inTxr1:    TEXCOORD0
              ) : COLOR0
{
 
    return tex2D(Texture0,inTxr1);
}



//--------------------------------------------------------------//
// Technique 
//--------------------------------------------------------------//
technique myeffect
{
   pass Pass_0
   {
      VertexShader = compile vs_2_0 Effect_Group_1_myeffect_Pass_0_Vertex_Shader_vs_main();
      PixelShader = compile ps_2_0 Effect_Group_1_myeffect_Pass_0_Pixel_Shader_ps_main();
   }

}
и пытаюсь подключить к хорс+блиц..
sh_fx=xLoadFXFile("myeffect.fx")
после этого все зависает т.е даже не возвращает в sh_fx

что не так подскажите
__________________
форум эт вещь... и почему я раньше им не пользовался?

AMD Phenom(tm) II X6 3.20GHz 8GB GTX 550(1Gb)
(Offline)
 
Ответить с цитированием
Старый 13.01.2012, 00:01   #96
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Вопросы про Xors3D

А Логи ксорса ничего не говорят?
Да и замени ViewProjection, на MATRIX_WORLDVIEWPROJ.
(Offline)
 
Ответить с цитированием
Старый 13.01.2012, 00:46   #97
Spy4433
ПроЭктировщик
 
Аватар для Spy4433
 
Регистрация: 16.04.2008
Сообщений: 161
Написано 36 полезных сообщений
(для 63 пользователей)
Ответ: Вопросы про Xors3D

логи , что то ничего не говорят
	 0:00:00:00.004	 Physical screen size: 338mm x 270mm. Aspect ratio: 1.25185 (5:4).
0:00:00:00.014	 X8R8B8B8 backbuffer format.
0:00:00:00.014	 No antialiasing.
0:00:00:00.025	 640x480x32 windowed graphics mode
0:00:00:00.025	 Setting new aspect ratio: 1.33333
New virtual viewport is 640 x 480
0:00:00:00.045	 No game controllers found.
0:00:00:00.143	 Squall loaded successfully.
0:00:00:00.144	 xPhysics is loaded.
0:00:00:00.145	 Default world created ( 0703FD60 )
0:00:00:00.150	 New font 'Tahoma' (size: 10) loaded in 4.369 ms.
0:00:00:00.150	 New camera (handle: 070750F8) is created in 0.118 ms.
0:00:00:00.151	 New sphere (handle: 07076F70) is created in 0.782 ms.
0:00:00:00.154	 New texture (handle: 07070D48) is loaded from file 'tex.bmp' in 2.7 ms.
собственно после создания текстуры должна выполнятся xLoadFXFile


может я что то не так делаю, или чего то не понимаю ?

Пс приложение зависает полностью
__________________
форум эт вещь... и почему я раньше им не пользовался?

AMD Phenom(tm) II X6 3.20GHz 8GB GTX 550(1Gb)
(Offline)
 
Ответить с цитированием
Старый 13.01.2012, 01:03   #98
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Вопросы про Xors3D

Код давай, и ехе.
(Offline)
 
Ответить с цитированием
Старый 13.01.2012, 01:18   #99
Spy4433
ПроЭктировщик
 
Аватар для Spy4433
 
Регистрация: 16.04.2008
Сообщений: 161
Написано 36 полезных сообщений
(для 63 пользователей)
Ответ: Вопросы про Xors3D

все в архиве

и вопрос
ViewProjection

MATRIX_WORLDVIEWPROJ -что это есть ? и почему надобно его а не ViewProjection


по любому мой косяк
Вложения
Тип файла: zip demo.zip (2.40 Мб, 449 просмотров)
__________________
форум эт вещь... и почему я раньше им не пользовался?

AMD Phenom(tm) II X6 3.20GHz 8GB GTX 550(1Gb)
(Offline)
 
Ответить с цитированием
Старый 13.01.2012, 01:36   #100
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,836 пользователей)
Ответ: Вопросы про Xors3D

Кстати у меня получались иногда шейдеры вещающие приложение при отсутствии каких-либо ошибок в логах. Лечилось это переписыванием шейдера с нуля.

VS_OUTPUT Effect_Group_1_myeffect_Pass_0_Vertex_Shader_vs_ma in( VS_INPUT Input )
{
VS_OUTPUT Output;

Output.Position = mul( Input.Position, matViewProjection );
Output.Txr1=Input.Txr1;
return( Output );
}

tex2D(Texture0,inTxr1);
//че это значит?
float4 Effect_Group_1_myeffect_Pass_0_Pixel_Shader_ps_mai n( float4 inDiffuse: COLOR0,
float2 inTxr1: TEXCOORD0
) : COLOR0
{

return tex2D(Texture0,inTxr1);
}
Сотри это и тыкай пальцем лучше стандартный шейдер из шагов
float4x4 matrixWorldViewProj : MATRIX_WORLDVIEWPROJ; // матрица итоговая
float4x4 matrixWorld : MATRIX_WORLD; // матрица мировая
float3 lightDirection : LIGHT0_DIRECTION; // направление
float4 lightColor : LIGHT0_COLOR; // цвет
float4 entityColor : COLOR_DIFFUSE; // цвет объекта
texture diffuseTexture : TEXTURE_0; // текстура
// описываем sampler
sampler diffuseSampler = sampler_state
{
Texture = <diffuseTexture>; // привязываем текстуру
// устанавливаем адресацию координат
AddressU = WRAP;
AddressV = WRAP;
AddressW = WRAP;
// устанавливаем фильтрацию
MinFilter = ANISOTROPIC;
MagFilter = ANISOTROPIC;
MipFilter = ANISOTROPIC;
// устанавливаем уровень фильтрации
MaxAnisotropy = 4;
};
// входная структура для вершинного шейдера
struct VSInput
{
float4 position : POSITION;
float3 normal : NORMAL;
float2 texCoords : TEXCOORD0;
};
// структура для результата вершинного шейдера
struct VSOutput
{
float4 position : POSITION;
float3 normal : TEXCOORD1;
float2 texCoords : TEXCOORD0;
};
// вершинный шейдер
VSOutput VSMain(VSInput input)
{
// объект для выходных данных
VSOutput output;
// трансформируем позицию вершины
output.position = mul(input.position, matrixWorldViewProj);
// трансформируем и нормализуем нормаль
output.normal = normalize(mul(input.normal, matrixWorld));
// переписываем текстурные координаты
output.texCoords = input.texCoords;
// возвращаем результат
return output;
}
// пиксельный шейдер
float4 PSMain(VSOutput input) : COLOR0
{
// делаем выборку из текстуры
float4 diffuse = tex2D(diffuseSampler, input.texCoords);
// расчитываем освещенность точки
float lit = dot(input.normal, -lightDirection);
// возвращаем результирующий цвет пиксела
return diffuse * entityColor * lit * lightColor;
}
// техника для отрисовки
technique Diffuse
{
pass p0
{
VertexShader = compile vs_2_0 VSMain();
PixelShader = compile ps_2_0 PSMain();
}
}
И не выучишь ты ХЛСЛ не выучив основы си или даже спп. На своем опыте говорю
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Spy4433 (13.01.2012)
Старый 13.01.2012, 01:40   #101
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,836 пользователей)
Ответ: Вопросы про Xors3D

Сообщение от Spy4433 Посмотреть сообщение
все в архиве

и вопрос
ViewProjection

MATRIX_WORLDVIEWPROJ -что это есть ? и почему надобно его а не ViewProjection


по любому мой косяк
Насколько я понимаю это семантики.
Они нужны для того чтобы хорс понял что нужно записать в эту переменную. Ну что бы ручками из хорса меньше всяких xSetFXFloat передавать.

float4 Effect_Group_1_myeffect_Pass_0_Pixel_Shader_ps_mai n( float4 inDiffuse: COLOR0,
float2 inTxr1: TEXCOORD0
//тут по идее должен вывод вершинного шейдера быть.
) : COLOR0
{

return tex2D(Texture0,inTxr1);
}

Ну и текстура у тебя не объявлена никак.

Если поменять твой чудо шейдер на не косячный из шагов то приложение работает. Компилятор шейдеров наверно просто охренел от твоего эпического творчества.
(Offline)
 
Ответить с цитированием
Старый 26.01.2012, 14:05   #102
ANIK123
Знающий
 
Аватар для ANIK123
 
Регистрация: 29.11.2010
Сообщений: 244
Написано 31 полезных сообщений
(для 49 пользователей)
Смущение Ответ: Вопросы про Xors3D

Привет Всем!)
Расскажите Мне Пожалуйста о дельта-тайме и о его использовании
В гугле не получилось найти что-то внятное и конкретное
__________________
Intel Core i3-4005U (1.7 ГГц), 4 ГБ ОЗУ, nVidia GeForce 940M 4 ГБ, Win8.1

Последний раз редактировалось ANIK123, 26.01.2012 в 21:49.
(Offline)
 
Ответить с цитированием
Старый 15.02.2012, 19:14   #103
Krep_Kospit
Оператор ЭВМ
 
Регистрация: 16.01.2012
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Вопросы про Xors3D

сделал машинку. В качестве колёс использую части самой модели.

For l = 0 To 5
	wheel.wheel = New wheel

		If l=5 Then wheel\entity = xFindChild(tank\model, "wheel5")
		If l=3 Then wheel\entity = xFindChild(tank\model, "wheel3")
		If l=1 Then wheel\entity = xFindChild(tank\model, "wheel1")
		If l=4 Then wheel\entity = xFindChild(tank\model, "wheel4")
		If l=2 Then wheel\entity = xFindChild(tank\model, "wheel2")
		If l=0 Then wheel\entity = xFindChild(tank\model, "wheel0")
		
			xEntityParent wheel\entity, tank\model;, False

		
		xEntityTexture wheel\entity, wheelT
	    wheel\max_Rotation = 15000
		xEntityAddWheel(tank\model, wheel\entity)
		   xEntityWheelSetConnectionPoint(tank\model, l, xEntityX(wheel\entity), xEntityY(wheel\entity), xEntityZ(wheel\entity))
		xEntityWheelSetAxle(tank\model, l,-1.0, 0.0, 0.0)
		xEntityWheelSetRadius(tank\model, l, 1.0)
		xEntityWheelSetMaxSuspensionForce(tank\model, l, wheel\max_Rotation)
		xEntityWheelSetSuspensionLength(tank\model, l, 1.5)
		xEntityWheelSetSuspensionStiffness(tank\model, l, 3.8)
		xEntityWheelSetSuspensionDamping(tank\model, l,2.22)
		xEntityWheelSetSuspensionCompression(tank\model,l, 0.3)
		xEntityWheelSetFriction(tank\model, l, 300)
		xEntityWheelSetRollInfluence(tank\model, l, 0.18);
		;xEntityAddsphereShape(wheel\entity,0, 0.1)	 


	Next
Происходит смещение колёс по координатам, т.е. немного вниз и вправо. С чем это может быть связано?
(Offline)
 
Ответить с цитированием
Старый 15.02.2012, 20:26   #104
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,836 пользователей)
Ответ: Вопросы про Xors3D

xEntityWheelSetRay(body,0,xr,yr,zr);
Ты направление по которому колесо смещается не выставил.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Krep_Kospit (15.02.2012)
Старый 15.02.2012, 21:22   #105
Krep_Kospit
Оператор ЭВМ
 
Регистрация: 16.01.2012
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Вопросы про Xors3D

Сообщение от dsd Посмотреть сообщение
xEntityWheelSetRay(body,0,xr,yr,zr);
Ты направление по которому колесо смещается не выставил.
ставил все нули - колёса улетали вообще... другие значения не улучшили ситуации... наверно, я не понимаю, как правильно прописывать тут?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 02:01.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com