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

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

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

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

Ответ
 
Опции темы
Старый 07.10.2009, 13:54   #256
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: Xors3D

1) Попиксельное освещение делается только на шейдерах.
2) В примерах есть. Если коротко - постэффект это такой пиксельный шейдер который вешается на полноэкранный квад, на который натянута текстура с рендером сцены.
3) Стоит. Ничего лучше пока вроде и не придумали для реалтайма. Скорость достигается всякими ухишрениями. Вообще тени очень сильно зависят от конкретной ситуации, порой можно и без PSSM обойтись (например когда вид сверху, и захватывается не большой участок карты). К тому же PSSM рендерит не всю сцену целиком несколько раз, а только то что попадает в сплит, но тут уже все упирается в организацию сцены.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Knightmare за это полезное сообщение:
ABTOMAT (08.10.2009), Fatalix3d (07.10.2009)
Старый 08.10.2009, 10:55   #257
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Xors3D

А если у меня затайленая 2-3 текстурами модель, то как тогда на модель накладывать шейдер?
(Offline)
 
Ответить с цитированием
Старый 08.10.2009, 12:22   #258
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Xors3D

спокойно
смотри примеры
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Mr_F_ за это полезное сообщение:
ABTOMAT (08.10.2009), Nex (08.10.2009)
Старый 13.10.2009, 11:39   #259
Mhyhr
Бывалый
 
Регистрация: 06.04.2009
Сообщений: 612
Написано 276 полезных сообщений
(для 858 пользователей)
Плохо Ответ: Xors3D -Туманыч

Собственно я наверно уже надоел товарищу Knightmar'у, но всё-же

Заметил условный баг тумана. Пример смотрим в аттаче.

Сначала попробуйте, подлететь к центру(перекрестию) а затем полетайте вдоль дорожек, в некоторых местах мы входим в "облако"(границу), видимо из за не-обновления позиции "тумана" в след за камерой.

Пишу тут потому что не уверен, что это не моей кривости рук дело
Вложения
Тип файла: rar Debug.rar (547.9 Кб, 432 просмотров)
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Mhyhr за это полезное сообщение:
moka (13.10.2009), ІГРОГРАЙКО (14.10.2009)
Старый 13.10.2009, 15:48   #260
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Xors3D

с туманом тоже видел баг, говорил найту уже
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 16.10.2009, 07:15   #261
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Xors3D

Вот небольшой баг, который сложно им считать, но всеже уязвимость колизии на лицо. Сфера ,падающая вниз, проскакивает через куб.
Попробовал обойти его, к удивлению больше наткнутся на подобное не смог
; Xors3D header file
Include "C:\Programs\Blitz3D\userlibs\xors3d.bb"

xGraphics3D 800,600,32,0
xSetBuffer xBackBuffer()

pxCreateWorld(0, "сможешь угадать?)))")
pxSetGravity(0, -10, 0)

;;;Creat

camera=xCreateCamera ()
xPositionEntity (camera,0,5,-20)
xRotateEntity camera,0,0,0

light=xCreateLight() 
xRotateEntity light,90,0,0 

plane=xCreateCube()
;ground_tex=xLoadTexture("terrain1.jpg")
;xScaleTexture (ground_tex,0.05,0.05)
xPositionEntity (plane,0,-1,0)
xEntityTexture plane,ground_tex 
xEntityType plane,1
xScaleEntity(plane,500,0.1,500)

Cube1=xCreateCube()
xPositionEntity(Cube1,10,5,0)
xScaleEntity(Cube1,5,5,5)
xEntityType(Cube1,1)

Cube=xCreatesphere()
xPositionEntity(Cube,20,45,0)
xScaleEntity(Cube,5,5,5)
xEntityRadius (Cube,5)
xEntityType(Cube,2)

Global jump,chislo1,inval,Kdown,V#=0.1

CreateUser(0,camera,0,8,-110,0)

xCollisions(2,1,2,2)

;_____________________________________________________________________________________________________
While Not xKeyHit(1)

If xEntityCollided(Cube,1)
	x=xCollisionX(Cube,0)
	;Stop
Else
	xMoveEntity(Cube,0,-0.01,0)
EndIf

pxRenderPhysic(140,1)

mys#=xMouseYSpeed()
mxs#=xMouseXSpeed()

;IntervalKey()
Gravitate()

Update_user(camera,mxs,mys)

xUpdateWorld()
xRenderWorld

xText 10,10, "chislo1="+chislo1
xText 10,20, "XSurface="+XSurface
xText 10,30, "Xset="+set

xFlip

Wend
;-----------------------------------------------------------------------------------------------------
End

Type User
	Field Model,camera
	Field Body,Body2,mash
	Field Pivot,Pivot2
	Field Shift#
End Type

Type GravEnt
	Field a#
	Field v#
	Field GravEntity,GravEntity2
End Type

Function Update_user(camera,mxs#,mys#)
For Us.User = Each User
	If mys>30 Then mys=30
	If mys<-30 Then mys=-30
	If mxs>30 Then mxs=30
	If mxs<-30 Then mxs=-30
	xTurnEntity camera,mys/5,0,0
	xTurnEntity Us\Pivot,0,-mxs/5,0,1

	If xKeyDown(32)=True Then xMoveEntity Us\Pivot,V,0,0
	If xKeyDown(30)=True Then xMoveEntity Us\Pivot,-V,0,0
	If xKeyDown(31)=True Then xMoveEntity Us\Pivot,0,0,-V
	If xKeyDown(17)=True Then xMoveEntity Us\Pivot,0,0,V

	If xKeyDown(42)=True 
		V=V+0.0002
	
	Else 
		V=V-0.0001
	EndIf
	
	If V>0.1 V=0.1 
	If V<0.03 V=0.03
Next
	u#=80
	xMoveMouse xGraphicsWidth()*0.5,xGraphicsHeight()*0.5
	xHidePointer
	If Abs(xEntityPitch#(camera))>u# xRotateEntity camera,(u#)*Sgn(xEntityPitch#(camera)),xEntityYaw(camera),0

End Function

Function CreateUser(ent,camera, pos_x, pos_y, pos_z,h#)
	Us.User = New User	
	Us\Pivot=xCreateSphere(5)
	Us\Pivot2=xCreateSphere(5)
    If ent>0 
		Us\Model=ent
	Else 
		Us\Model=xCreateCube()
	EndIf
	NewGravEnt(Us\Pivot)
	Us\camera=camera
	xPositionEntity Us\Model, pos_x,pos_y-h,pos_z
	xPositionEntity Us\Pivot, pos_x,pos_y,pos_z
	xPositionEntity Us\camera, pos_x,pos_y+h+6,pos_z
	xEntityParent(Us\Model,Us\Pivot)
	xEntityParent(Us\camera,Us\Pivot)
	;Us\mash = xCreateCube()
	;xScaleEntity(Us\mash,0.05,0.05,0.05)
	
End Function

Function NewGravEnt(entity)
	grv.GravEnt= New GravEnt
	grv\GravEntity=entity
	xScaleEntity(grv\GravEntity,2,2,2)
	xEntityType grv\GravEntity,2
	xEntityRadius(grv\GravEntity,2)
	;xHideEntity(entity)
End Function

Function Gravitate()
	For grv.GravEnt= Each GravEnt
		
		If Not xEntityCollided (grv\GravEntity,1)
				grv\a=grv\a-0.0001				
				grv\v=grv\v+grv\a/200
				If grv\v>0.1 grv\v=0.1
		Else 
			xLinePick(xEntityX(grv\GravEntity),xEntityY(grv\GravEntity),xEntityZ(grv\GravEntity),0,-2,0)
			If xPickedEntity()<>0
				grv\a=0
				grv\v=0
			Else
				grv\a=grv\a-0.0001				
				grv\v=grv\v+grv\a/200
				If grv\v>0.1 grv\v=0.1
			EndIf
			If xKeyHit (57)				
				grv\v=0.02
				grv\a=0.01
			EndIf
		EndIf
		xMoveEntity grv\GravEntity,0,grv\v,0
		;If xEntityCollided(grv\GravEntity,1) x=xCollisionX(grv\GravEntity,CountCollisions (grv\GravEntity)-1)
	Next
End Function

Последний раз редактировалось CRASHER, 17.10.2009 в 20:11.
(Offline)
 
Ответить с цитированием
Старый 17.10.2009, 12:12   #262
Mhyhr
Бывалый
 
Регистрация: 06.04.2009
Сообщений: 612
Написано 276 полезных сообщений
(для 858 пользователей)
Ответ: Xors3D

Возможно я что то не доглядел(хорошо бы с медией выложить), но зачем смешивать (x) & (px) колизии?
(Offline)
 
Ответить с цитированием
Старый 17.10.2009, 20:12   #263
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Xors3D

pinqin, а чего смешного?))) ты запускал?
Если да то еще запусти. Я пару функций не доложил, уже поправил
(Offline)
 
Ответить с цитированием
Старый 17.10.2009, 20:49   #264
Mhyhr
Бывалый
 
Регистрация: 06.04.2009
Сообщений: 612
Написано 276 полезных сообщений
(для 858 пользователей)
Ответ: Xors3D


pinqin, а чего смешного?))) ты запускал?
1) смешивать-смешного
Я был серьЁзен...)))
2) Не запускал по загадочным обстоятельствам...:p
(Offline)
 
Ответить с цитированием
Старый 26.10.2009, 16:58   #265
Fatalix3d
Разработчик
 
Аватар для Fatalix3d
 
Регистрация: 28.12.2008
Адрес: Алматы
Сообщений: 486
Написано 252 полезных сообщений
(для 1,160 пользователей)
Ответ: Xors3D

У меня такой вопрос при экспортировании моделей с альфа каналом (трава, листва деревьев) наблюдается такой эффект, трава полу-прозрачна смотрите скриншот. Загружал текстурированную модель через pipiline и текстурил через xtextureentity но эффект остается(. В Blitz3d все пучком такой эффект только в Xors3d.
Миниатюры
Нажмите на изображение для увеличения
Название: Clipboard01.jpg
Просмотров: 792
Размер:	82.7 Кб
ID:	8088  Нажмите на изображение для увеличения
Название: Clipboard02.jpg
Просмотров: 836
Размер:	55.6 Кб
ID:	8089  
(Offline)
 
Ответить с цитированием
Старый 26.10.2009, 17:01   #266
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: Xors3D

Это один из минусов того примера использования PSSM который мы вкладывали. В идеале тени надо накладывать на каждый объект по отдельности, а не на всю сцену сразу. В принципе подобные артефакты можно свести к минимуму допиливанием шейдера.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Fatalix3d (26.10.2009)
Старый 22.01.2010, 21:55   #267
Si-Jey
AnyKey`щик
 
Регистрация: 03.06.2009
Сообщений: 9
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Xors3D

А как в Xors3D проиграть видео-файл,в обычном ББ реализуется просто, а при переводе команд под ксорс видео не отображается.
Разьясните пожалуйста.
(Offline)
 
Ответить с цитированием
Старый 23.01.2010, 14:53   #268
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Xors3D

никак
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 14.02.2010, 08:43   #269
Reizel
Задрот
 
Аватар для Reizel
 
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений
(для 863 пользователей)
Ответ: Xors3D

Решил поюзать сее творение на С++. Возник вопрос. Сначала надо создать WinApi шными средствами окно а потом уже подставлять его HWND в xSetRenderWindow? если не так то будьте добры, объясните...
(Offline)
 
Ответить с цитированием
Старый 14.02.2010, 12:26   #270
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Ответ: Xors3D

создавай консольное приложение !!
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Xors3d wants YOU! .Squid Xors3D 33 13.01.2013 23:34
Xors3D для D johnk Проекты C++ 8 09.08.2009 14:18
Xors3D for .NET? johnk C++ 7 06.08.2009 09:34
Xors3D ЛысыЙ_Чук-Иванчук Модули для BlitzMax 145 18.06.2009 21:17
xors3d NitE 3D-программирование 9 02.04.2009 22:21


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


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