|
Xors3D Графический движок с поддержкой DirectX9 |
12.11.2010, 14:04
|
#1
|
Разработчик
Регистрация: 12.10.2008
Адрес: Самара
Сообщений: 437
Написано 55 полезных сообщений (для 92 пользователей)
|
Radeon 9600 pro vs. Refraction Shader
Стал тестить семпл с рефрактом - не пашет дело в видюхе?
подробное инфо:
Radeon 9600 pro
DirectX DirectX 9, Shader 2.0
Mem 256 mb (128 bit)
GPU 400 MHz
Что за фигня не знаю...
__________________
Пекарня: Intel Core i3 - 3240(3.40Ghz), ram 8 gb, video Gigabyte Nvidia GeForce GTX 650 1gb
Лэптоп : Intel Core i3 - 2365(1.40Ghz), ram 4gb, video Int Intel HD3000(512mb)
Мой набор: 3ds Max 9 + Xors3d(Blitz3d) + Photoshop
|
(Offline)
|
|
12.11.2010, 14:05
|
#2
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,354
Написано 2,470 полезных сообщений (для 6,850 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
Код? Скрин?
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
12.11.2010, 14:10
|
#3
|
Разработчик
Регистрация: 12.10.2008
Адрес: Самара
Сообщений: 437
Написано 55 полезных сообщений (для 92 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
Прилагаю:
Код из стокового сепла "Refract"
;====================================
; mSL (mini Shader Library)
;
; Refraction
;
; Author: MoKa (Maxim Miheyev)
; Email: [email protected]
; Visit: xors3d.com
;====================================
;====================================
Include "Xors3D.bb"
;====================================
;====================================
; Window
xGraphics3D 800,600,32,0,1
xSetTextureFiltering TF_ANISOTROPIC
SeedRnd MilliSecs()
;====================================
;====================================
; Font
Local Font%=xLoadFont("Tahoma",10)
xSetFont Font
;====================================
;====================================
; Varriables
Global mXSp%,mYSp%
Global IKdQ%,IKdW%,IKdE%,IKdA%,IKdS%,IKdD%
Global IKhF1%,EffRefractionNM%=True
;====================================
;====================================
; Camera
Global gCamera%=xCreateCamera()
xCameraZoom gCamera,.8
xCameraClsColor gCamera,0,0,0
xRotateEntity gCamera,-20,45,0
xMoveEntity gCamera,0,10,-100
xCameraRange gCamera,1,6000
;====================================
;====================================
; SkyBox
Global SkyBox%=mLoadSkyBox%("..\Media\SkyBox\Sky1")
xPositionMesh SkyBox,0,1,0
xScaleEntity SkyBox,3000,1500,3000
;====================================
;====================================
; Shader
Local tShader%=xLoadFXFile("..\..\Materials\Refraction.fx")
;====================================
;====================================
; Model
Local tModel%=xLoadMesh("..\Media\HellKnight.b3d")
xUpdateNormals tModel
Local tTextureNormal%=xLoadTexture("..\Media\HellKnight_Normal.jpg")
Local tTextureScreen%=xCreateTexture(256,192)
xSetEntityEffect tModel,tShader
xSetEffectTechnique tModel,"RefractionNM"
xSetEffectMatrixSemantic tModel,"MatWorldViewProj",WORLDVIEWPROJ
xSetEffectMatrixSemantic tModel,"MatWorld",WORLD
; Shader Varriables
xSetEffectTexture tModel, "tNormal",tTextureNormal
xSetEffectTexture tModel, "tScreen",tTextureScreen
xSetEffectFloat tModel, "FallOffInt",.2
xSetEffectVector tModel, "FallOffClr",0,.6,.8
xSetEffectFloat tModel, "FallOffSoft",4
xSetEffectFloat tModel, "Refract",.1
;====================================
;====================================
; Main Cycle
xMoveMouse 400,300
Repeat
UpdateInput
UpdateCamera gCamera,.1,1
;====================================
xTurnEntity tModel,0,.2,0
If IKhF1
EffRefractionNM=Not EffRefractionNM
If EffRefractionNM
xSetEffectTechnique tModel,"RefractionNM"
Else
xSetEffectTechnique tModel,"Refraction"
EndIf
EndIf
;====================================
If xKeyHit(KEY_ESCAPE) End
;====================================
; Render Refraction
xHideEntity tModel
xCameraViewport gCamera,0,0,256,192
xSetBuffer xTextureBuffer(tTextureScreen)
xRenderWorld
xSetBuffer xBackBuffer()
xCameraViewport gCamera,0,0,800,600
xShowEntity tModel
;====================================
; Setting Parameters
xSetEffectVector tModel, "PosCamera",xEntityX(gCamera),xEntityY(gCamera),xEntityZ(gCamera)
;====================================
xRenderWorld
;====================================
;====================================
xText 10,10,"TrisRendered: "+xTrisRendered()
xText 10,25,"FPS: "+xGetFPS()
;====================================
If EffRefractionNM
xText 10,575,"Press F1 to Change Refraction Mode to Simple"
Else
xText 10,575,"Press F1 to Change Refraction Mode to Normal Mapped"
EndIf
;====================================
xFlip
Forever
;====================================
;====================================
; Functions
Function UpdateInput()
xMoveMouse 400,300
mXSp=xMouseXSpeed() mYSp=xMouseYSpeed()
IKdQ=xKeyDown(KEY_Q) IKdW=xKeyDown(KEY_W)
IKdE=xKeyDown(KEY_E) IKdA=xKeyDown(KEY_A)
IKdS=xKeyDown(KEY_S) IKdD=xKeyDown(KEY_D)
IKhF1=xKeyHit(KEY_F1)
End Function
Function UpdateCamera(Camera%,ViewSensivity#,MoveSensivity#)
Local CamP#=xEntityPitch(gCamera)+mYSp*ViewSensivity
If Abs(CamP)>80 CamP=80*Sgn(CamP)
xTurnEntity Camera,0,-mXSp*ViewSensivity,0
xRotateEntity Camera,CamP,xEntityYaw(gCamera),0
xMoveEntity Camera,(IKdD-IKdA)*MoveSensivity,(IKdE-IKdQ)*MoveSensivity,(IKdW-IKdS)*MoveSensivity
End Function
Function mLoadSkyBox%(Dir$,Typ$="jpg")
Local Mesh%=xCreateMesh()
Local Brush%,Texture%,Surf%,v0%,v1%,v2%,v3%
; Left
If FileType(Dir+"\"+"left."+Typ)<>0
Texture=xLoadTexture(Dir+"\"+"left."+Typ,49)
Brush=xCreateBrush()
xBrushTexture Brush,Texture
Surf=xCreateSurface(Mesh,Brush)
v0=xAddVertex(Surf,-1, 1,-1,0,0)
v1=xAddVertex(Surf,-1, 1, 1,1,0)
v2=xAddVertex(Surf,-1,-1,-1,0,1)
v3=xAddVertex(Surf,-1,-1, 1,1,1)
xAddTriangle Surf,v2,v1,v0
xAddTriangle Surf,v1,v2,v3
EndIf
; Front
If FileType(Dir+"\"+"front."+Typ)<>0
Texture=xLoadTexture(Dir+"\"+"front."+Typ,49)
Brush=xCreateBrush()
xBrushTexture Brush,Texture
Surf=xCreateSurface(Mesh,Brush)
v0=xAddVertex(Surf,-1, 1,1,0,0)
v1=xAddVertex(Surf, 1, 1,1,1,0)
v2=xAddVertex(Surf,-1,-1,1,0,1)
v3=xAddVertex(Surf, 1,-1,1,1,1)
xAddTriangle Surf,v2,v1,v0
xAddTriangle Surf,v1,v2,v3
EndIf
; Right
If FileType(Dir+"\"+"right."+Typ)<>0
Texture=xLoadTexture(Dir+"\"+"right."+Typ,49)
Brush=xCreateBrush()
xBrushTexture Brush,Texture
Surf=xCreateSurface(Mesh,Brush)
v0=xAddVertex(Surf,1, 1, 1,0,0)
v1=xAddVertex(Surf,1, 1,-1,1,0)
v2=xAddVertex(Surf,1,-1, 1,0,1)
v3=xAddVertex(Surf,1,-1,-1,1,1)
xAddTriangle Surf,v2,v1,v0
xAddTriangle Surf,v1,v2,v3
EndIf
; Back
If FileType(Dir+"\"+"back."+Typ)<>0
Texture=xLoadTexture(Dir+"\"+"back."+Typ,49)
Brush=xCreateBrush()
xBrushTexture Brush,Texture
Surf=xCreateSurface(Mesh,Brush)
v0=xAddVertex(Surf, 1, 1,-1,0,0)
v1=xAddVertex(Surf,-1, 1,-1,1,0)
v2=xAddVertex(Surf, 1,-1,-1,0,1)
v3=xAddVertex(Surf,-1,-1,-1,1,1)
xAddTriangle Surf,v2,v1,v0
xAddTriangle Surf,v1,v2,v3
EndIf
; Bottom
If FileType(Dir+"\"+"bottom."+Typ)<>0
Texture=xLoadTexture(Dir+"\"+"bottom."+Typ,49)
Brush=xCreateBrush()
xBrushTexture Brush,Texture
Surf=xCreateSurface(Mesh,Brush)
v0=xAddVertex(Surf,-1,-1, 1,0,0)
v1=xAddVertex(Surf, 1,-1, 1,1,0)
v2=xAddVertex(Surf,-1,-1,-1,0,1)
v3=xAddVertex(Surf, 1,-1,-1,1,1)
xAddTriangle Surf,v2,v1,v0
xAddTriangle Surf,v1,v2,v3
EndIf
; Top
If FileType(Dir+"\"+"top."+Typ)<>0
Texture=xLoadTexture(Dir+"\"+"top."+Typ,49)
Brush=xCreateBrush()
xBrushTexture Brush,Texture
Surf=xCreateSurface(Mesh,Brush)
v0=xAddVertex(Surf,-1, 1, 1,0,0)
v1=xAddVertex(Surf,-1, 1,-1,1,0)
v2=xAddVertex(Surf, 1, 1, 1,0,1)
v3=xAddVertex(Surf, 1, 1,-1,1,1)
xAddTriangle Surf,v2,v1,v0
xAddTriangle Surf,v1,v2,v3
EndIf
xEntityFX Mesh,1+8
xFlipMesh Mesh
xUpdateNormals Mesh
Return Mesh
End Function
;====================================
Скрин:
Примечание: Сборка Xors3D последняя 628
__________________
Пекарня: Intel Core i3 - 3240(3.40Ghz), ram 8 gb, video Gigabyte Nvidia GeForce GTX 650 1gb
Лэптоп : Intel Core i3 - 2365(1.40Ghz), ram 4gb, video Int Intel HD3000(512mb)
Мой набор: 3ds Max 9 + Xors3d(Blitz3d) + Photoshop
|
(Offline)
|
|
12.11.2010, 15:50
|
#4
|
Дэвелопер
Регистрация: 06.04.2009
Адрес: Запорожье
Сообщений: 1,500
Написано 1,011 полезных сообщений (для 4,642 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
Смысл приводить код приложения, если вся соль в шейдере?
R300 поддерживает СМ2.0. А теперь глянь на объявление техник в шейдере.
UPD: а еще иногда полезно включать лог.
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
12.11.2010, 15:50
|
#5
|
Разработчик
Регистрация: 19.05.2009
Адрес: Россия Иркутская область
Сообщений: 350
Написано 51 полезных сообщений (для 66 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
Сообщение от Colossus
Стал тестить семпл с рефрактом - не пашет дело в видюхе?
подробное инфо:
Radeon 9600 pro
DirectX DirectX 9, Shader 2.0
Mem 256 mb (128 bit)
GPU 400 MHz
Что за фигня не знаю...
|
А что за ошибка то хоть?
__________________
|
(Offline)
|
|
12.11.2010, 17:21
|
#6
|
Разработчик
Регистрация: 12.10.2008
Адрес: Самара
Сообщений: 437
Написано 55 полезных сообщений (для 92 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
на скрине все прекрасно видно, ога
UPD: Сквид, не подскажешь путь решения проблемы? или она не разрешима? ну я имею в виду кроме замены видюхи )) понимаю что это УГ...
__________________
Пекарня: Intel Core i3 - 3240(3.40Ghz), ram 8 gb, video Gigabyte Nvidia GeForce GTX 650 1gb
Лэптоп : Intel Core i3 - 2365(1.40Ghz), ram 4gb, video Int Intel HD3000(512mb)
Мой набор: 3ds Max 9 + Xors3d(Blitz3d) + Photoshop
|
(Offline)
|
|
12.11.2010, 17:53
|
#7
|
Дэвелопер
Регистрация: 06.04.2009
Адрес: Запорожье
Сообщений: 1,500
Написано 1,011 полезных сообщений (для 4,642 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
ТрОеЧкИ нА дВоЕчКи ПоМеНяЙ.
__________________
|
(Offline)
|
|
Эти 7 пользователя(ей) сказали Спасибо .Squid за это полезное сообщение:
|
|
12.11.2010, 18:20
|
#8
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
В коде шейдера, в Technique..
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
12.11.2010, 19:11
|
#9
|
Разработчик
Регистрация: 12.10.2008
Адрес: Самара
Сообщений: 437
Написано 55 полезных сообщений (для 92 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
Спасибо парни, помогло)
UPD: теперь хоть буду знать как решить проблему в сл раз ))
__________________
Пекарня: Intel Core i3 - 3240(3.40Ghz), ram 8 gb, video Gigabyte Nvidia GeForce GTX 650 1gb
Лэптоп : Intel Core i3 - 2365(1.40Ghz), ram 4gb, video Int Intel HD3000(512mb)
Мой набор: 3ds Max 9 + Xors3d(Blitz3d) + Photoshop
|
(Offline)
|
|
15.11.2010, 15:47
|
#10
|
Нуждающийся
Регистрация: 19.11.2008
Адрес: Украина, Луганск
Сообщений: 72
Написано 34 полезных сообщений (для 123 пользователей)
|
Ответ: Radeon 9600 pro vs. Refraction Shader
Сообщение от Colossus
Спасибо парни, помогло)
UPD: теперь хоть буду знать как решить проблему в сл раз ))
|
Но не любой шейдер переживёт подобную замену. Читай ограничения:
Для вершинных шейдеров доступны следующие шейдерные модели:
vs_1_1 – Первая аппаратно поддерживаемая версия шейдеров. Накла-дывает определенные ограничения: 128 инструкций, отсутствие дина-мического ветвления, нельзя использовать выборку из текстур в вер-шинном шейдере, нет поддержки аппаратного инстансинга.
vs_2_0 – Накладывает определенные ограничения: 256 инструкций, отсутствие динамического ветвления, нельзя использовать выборку из текстур в вершинном шейдере, нет поддержки аппаратного инстансин-га.
vs_2_x – Для каждого вендора эта версия является специфичной, по-этому нельзя однозначно говорить о ее ограничениях
vs_3_0 – Накладывает определенные ограничения: 512 инструкций, поддерживает динамические ветвления и выборку из текстур в вер-шинном шейдере (максимум 4 текстуры).
Для пиксельных шейдеров доступны следующие шейдерные модели:
ps_1_1 – Накладывает определенные ограничения: 32 инструкции, максимум 4 текстуры, отсутствие градиентной выборки из текстур, от-сутствие динамического ветвления.
ps_1_2 – Расширение 1.1, добавлены новые функции и увеличено ко-личество инструкций до 64.
ps_1_3 – Расширение 1.1, добавлены новые функции и увеличено ко-личество инструкций до 64.
ps_1_4 – Расширение 1.1, добавлены новые функции и увеличено ко-личество инструкций до 64.
ps_2_0 – Накладывает определенные ограничения: 64 инструкции, 32 инструкции для текстурных выборок, 8 текстур, отсутствие динамиче-ского ветвления
ps_2_x – Для каждого вендора эта версия является специфичной, по-этому нельзя однозначно говорить о ее ограничениях
ps_3_0 – Накладывает определенные ограничения: 512 инструкций, неограниченное количество инструкций для текстурных выборок, пря-мой доступ к позиции точки, наличие динамического ветвления
|
Взято из Shaders in Xors3d Engine. First steps (RU)
__________________
Лечим заражение... одна пуля - один больной.
|
(Offline)
|
|
Эти 4 пользователя(ей) сказали Спасибо viper86 за это полезное сообщение:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:19.
|