vlactelin |
28.10.2011 00:43 |
Ответ: Помогите разобраться в AShodow!....
эм... столкнулся с такой проблемой... когда не добавляю воду тень есть... как добавляю воду тени нет...
в чем она заключается???!
код с водой:
PHP код:
Include "Ashadow.bb" Include "fps.bb"
AGraphics3D 1400,1050,256,1
PostProcessInit() CreatePixelDistortion() SetBumpShader 0, 0.15
SetBuffer BackBuffer() cam=CreateCamera()
light=CreateLight(2) SetSLight(light,2) PositionEntity light,50,80,0 Lsphere=CreateSphere(4,light) EntityFX Lsphere,1
cub=CreateCube() PositionEntity cub,0,0,5 ScaleEntity cub,1,0.3,1 RotateEntity cub,0,40,0
rtopor=ALoadMesh("model\rtopor.3ds",0,2) mech=ALoadMesh("model\mech.3ds",0,2) chel=ALoadMesh("model\chel.3ds",0,2) plecho=LoadMesh("model\plecho.3ds") earth=LoadMesh("model\kamni.3ds") krist=ALoadMesh("model\krist.3ds",0,2)
ttopor=LoadTexture("texture\molot.jpg") tmech=LoadTexture("texture\mech.jpg") tearth=LoadTexture("texture\earth.jpg") tkrist=LoadTexture("texture\kristal.jpg")
EntityTexture mech,tmech EntityTexture rtopor,ttopor EntityTexture earth,tearth EntityTexture krist,tkrist
tex=LoadTexture("WaterNmap.JPG",9);Wbump.jpg",9) ScaleTexture tex, .5, .5 texb2=LoadTexture("WaterNmap.JPG",9);Wbump.jpg",9) ScaleTexture texb2, .3, .3 TextureBlend texb2,5
WaterState\X=0 WaterState\Y=-5 WaterState\Z=0 WaterState\ScaleX = 200 WaterState\ScaleY = 200 WaterState\ScaleZ = 200
WaterState\ReflectSizeW = 256 WaterState\ReflectSizeH = 200
WaterState\WaterColorR = 185 WaterState\WaterColorG = 220 WaterState\WaterColorB = 255
WaterState\GradientCubeMap = gradtex
If BUMPENVMAP_SUPPORT=1 WaterState\BumpTexture = tex WaterState\BumpPower= 0.3 WaterState\Reflective=1 WaterState\BumpReflectOFF=1 WaterState\UnderWaterReflective=0 WaterState\Refractive=1 Else WaterState\BumpTexture = 0 WaterState\BumpPower= 0 WaterState\Reflective=1 WaterState\UnderWaterReflective=1 WaterState\Refractive=0 EndIf
WaterPlane=ACreateRenderWater (1, WaterState)
WaterMesh = AGetWaterEntity(WaterPlane) SetRefractBumpTexture WaterMesh, texb2,0,1
While Not MouseHit(3) Or KeyHit(1)
pt#=pt#+.001 PositionTexture tex, pt#, pt# PositionTexture texb2, -pt#, -pt#
TurnEntity cub,.6,.2,.3
mouselook(cam,1,1)
If KeyDown(200) MoveEntity cam,0,0,.1 If KeyDown(208) MoveEntity cam,0,0,-.1
UpdateWorld
ARenderWorld(cam,1,0)
AUpdateWater(cam)
UpdateRefract cam
PostProcess_Render cam
Flip 1 Wend End
Function mouselook(ent,mov#=1,Mode=1)
mxspd#=MouseXSpeed()*0.25 myspd#=MouseYSpeed()*0.25
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 campitch#=EntityPitch(ent)+myspd# If campitch#<-85 Then campitch#=-85 If campitch#>85 Then campitch#=85
RotateEntity ent,campitch#,EntityYaw(ent)-mxspd#,EntityRoll(ent) If Mode=1 If KeyDown(17) MoveEntity ent,0,0,mov If KeyDown(31) MoveEntity ent,0,0,-mov If KeyDown(32) MoveEntity ent,mov,0,0 If KeyDown(30) MoveEntity ent,-mov,0,0 Else If Mode=3 If KeyDown(200) MoveEntity ent,0,0,0.1 If KeyDown(208) MoveEntity ent,0,0,-0.1 If KeyDown(205) MoveEntity ent,0.1,0,0 If KeyDown(203) MoveEntity ent,-0.1,0,0 If KeyDown(17) MoveEntity ent,0,0,mov If KeyDown(31) MoveEntity ent,0,0,-mov If KeyDown(32) MoveEntity ent,mov,0,0 If KeyDown(30) MoveEntity ent,-mov,0,0 If MouseDown(1) MoveEntity ent,0,0,mov If MouseDown(2) MoveEntity ent,0,0,-mov ElseIf Mode=2 If KeyDown(200) MoveEntity ent,0,0,.1 If KeyDown(208) MoveEntity ent,0,0,-.1 If KeyDown(205) MoveEntity ent,.1,0,0 If KeyDown(203) MoveEntity ent,-.1,0,0 EndIf End Function
код без воды но с тенью:
PHP код:
Include "Ashadow.bb" Include "fps.bb"
AGraphics3D 1400,1050,256,1
PostProcessInit() CreatePixelDistortion() SetBumpShader 0, 0.15
SetBuffer BackBuffer() cam=CreateCamera()
light=CreateLight(2) SetSLight(light,2) PositionEntity light,50,80,0 Lsphere=CreateSphere(4,light) EntityFX Lsphere,1
cub=CreateCube() PositionEntity cub,0,0,5 ScaleEntity cub,1,0.3,1 RotateEntity cub,0,40,0
rtopor=ALoadMesh("model\rtopor.3ds",0,2) mech=ALoadMesh("model\mech.3ds",0,2) chel=ALoadMesh("model\chel.3ds",0,2) plecho=LoadMesh("model\plecho.3ds") earth=LoadMesh("model\kamni.3ds") krist=ALoadMesh("model\krist.3ds",0,2)
ttopor=LoadTexture("texture\molot.jpg") tmech=LoadTexture("texture\mech.jpg") tearth=LoadTexture("texture\earth.jpg") tkrist=LoadTexture("texture\kristal.jpg")
EntityTexture mech,tmech EntityTexture rtopor,ttopor EntityTexture earth,tearth EntityTexture krist,tkrist
While Not MouseHit(3) Or KeyHit(1)
TurnEntity cub,.6,.2,.3
mouselook(cam,1,1)
If KeyDown(200) MoveEntity cam,0,0,.1 If KeyDown(208) MoveEntity cam,0,0,-.1
UpdateWorld
ARenderWorld(cam,1,0)
UpdateRefract cam
PostProcess_Render cam
Flip 1 Wend End
Function mouselook(ent,mov#=1,Mode=1)
mxspd#=MouseXSpeed()*0.25 myspd#=MouseYSpeed()*0.25
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 campitch#=EntityPitch(ent)+myspd# If campitch#<-85 Then campitch#=-85 If campitch#>85 Then campitch#=85
RotateEntity ent,campitch#,EntityYaw(ent)-mxspd#,EntityRoll(ent) If Mode=1 If KeyDown(17) MoveEntity ent,0,0,mov If KeyDown(31) MoveEntity ent,0,0,-mov If KeyDown(32) MoveEntity ent,mov,0,0 If KeyDown(30) MoveEntity ent,-mov,0,0 Else If Mode=3 If KeyDown(200) MoveEntity ent,0,0,0.1 If KeyDown(208) MoveEntity ent,0,0,-0.1 If KeyDown(205) MoveEntity ent,0.1,0,0 If KeyDown(203) MoveEntity ent,-0.1,0,0 If KeyDown(17) MoveEntity ent,0,0,mov If KeyDown(31) MoveEntity ent,0,0,-mov If KeyDown(32) MoveEntity ent,mov,0,0 If KeyDown(30) MoveEntity ent,-mov,0,0 If MouseDown(1) MoveEntity ent,0,0,mov If MouseDown(2) MoveEntity ent,0,0,-mov ElseIf Mode=2 If KeyDown(200) MoveEntity ent,0,0,.1 If KeyDown(208) MoveEntity ent,0,0,-.1 If KeyDown(205) MoveEntity ent,.1,0,0 If KeyDown(203) MoveEntity ent,-.1,0,0 EndIf End Function
|