Systemque | Дата: Среда, 11 Апреля 2007, 07:55 | Сообщение # 1 |
Продвинутый
Группа: Пользователи
Сообщений: 187
Награды: 0
Замечания: 0%
Статус: 
| Вот я не могу вставить к себе в проэкт песонажа :: вот проэкт токо где лес Graphics3D 640,480 cam = CreateCamera() PositionEntity cam, 0, 30, -20 RotateEntity cam, 30, 0, 0 l = CreateLight() RotateEntity l, 0, 45, 45 ground = CreatePlane() PositionEntity ground, 0, -8, 0 grass = LoadTexture("C:\media\grass.jpg") ScaleTexture grass, 50, 50 EntityTexture ground, grass fir = CreatePivot() c1 = CreateCone(20, 1, fir) ScaleEntity c1, 5, 5, 5 EntityColor c1, 0, 255, 0 c2 = CreateCone(20, 1, fir) ScaleEntity c2, 4, 4, 4 PositionEntity c2, 0, 4, 0 EntityColor c2, 0, 255, 0 c3 = CreateCone(20, 1, fir) ScaleEntity c3, 3, 3, 3 PositionEntity c3, 0, 7, 0 EntityColor c3, 0, 255, 0 c4 = CreateCone(20, 1, fir) ScaleEntity c4, 2, 2, 2 PositionEntity c4, 0, 10, 0 EntityColor c4, 0, 255, 0 cyl = CreateCylinder(20, 1, fir) PositionEntity cyl, 0, -6, 0 ScaleEntity cyl, 2, 2, 2 EntityColor cyl, 170, 130, 30 moss = LoadTexture("C:\media\moss.jpg") EntityTexture c1, moss EntityTexture c2, moss EntityTexture c3, moss EntityTexture c4, moss wood = LoadTexture("C:\media\wood.jpg") EntityTexture cyl, wood For x = 1 To 100 fir2 = CopyEntity(fir) PositionEntity fir2, Rnd(-120, 120), 0, Rnd(1, 240) Next xa = 0 ya = 0 Repeat If KeyDown(200) Then xa = xa + 1 If KeyDown(208) Then xa = xa - 1 If KeyDown(203) Then ya = ya + 1 If KeyDown(205) Then ya = ya - 1 RotateEntity cam, xa, ya, 0 If KeyDown(1) Then Exit RenderWorld Flip Forever ________________________________________________________ Всё работает, а вот с персонажем :: ________________________________________________________ Graphics3D 640,480 cam = CreateCamera() PositionEntity cam, 0, 30, -20 RotateEntity cam, 30, 0, 0 l = CreateLight() RotateEntity l, 0, 45, 45 ground = CreatePlane() PositionEntity ground, 0, -8, 0 grass = LoadTexture("C:\media\grass.jpg") ScaleTexture grass, 50, 50 EntityTexture ground, grass fir = CreatePivot() c1 = CreateCone(20, 1, fir) ScaleEntity c1, 5, 5, 5 EntityColor c1, 0, 255, 0 c2 = CreateCone(20, 1, fir) ScaleEntity c2, 4, 4, 4 PositionEntity c2, 0, 4, 0 EntityColor c2, 0, 255, 0 c3 = CreateCone(20, 1, fir) ScaleEntity c3, 3, 3, 3 PositionEntity c3, 0, 7, 0 EntityColor c3, 0, 255, 0 c4 = CreateCone(20, 1, fir) ScaleEntity c4, 2, 2, 2 PositionEntity c4, 0, 10, 0 EntityColor c4, 0, 255, 0 cyl = CreateCylinder(20, 1, fir) PositionEntity cyl, 0, -6, 0 ScaleEntity cyl, 2, 2, 2 EntityColor cyl, 170, 130, 30 moss = LoadTexture("C:\media\moss.jpg") EntityTexture c1, moss EntityTexture c2, moss EntityTexture c3, moss EntityTexture c4, moss wood = LoadTexture("C:\media\wood.jpg") EntityTexture cyl, wood For x = 1 To 100 fir2 = CopyEntity(fir) PositionEntity fir2, Rnd(-120, 120), 0, Rnd(1, 240) Next xa = 0 ya = 0 Repeat If KeyDown(200) Then xa = xa + 1 If KeyDown(208) Then xa = xa - 1 If KeyDown(203) Then ya = ya + 1 If KeyDown(205) Then ya = ya - 1 RotateEntity cam, xa, ya, 0 robot = LoadMesh("C:\MEDIA\running.3ds") ScaleEntity robot, 0.4, 0.4, 0.4 rx#=10 rz#=0 ang=90 Repeat PositionEntity robot, rx#, -8, rz# RotateEntity robot, 0, ang + 90, 0 PointEntity cam, robot If KeyDown(200) Then rx# = rx# + Cos(ang) * 0.5 rz# = rz# + Sin(ang) * 0.5 End If If KeyDown(203) Then ang = ang + 5 If KeyDown(205) Then ang = ang - 5 If KeyDown(1) Then Exit RenderWorld Flip Forever ________________________________________________________ и не работает | Добавлено (10.04.2007, 21:47) --------------------------------------------- кстати в отдельных файлах получилось, а вот там ошибка "Experting "Forever"" Добавлено (11.04.2007, 07:55) --------------------------------------------- где моя ошибка?
Сообщение отредактировал SaLO - Вторник, 10 Апреля 2007, 21:32 |
|
| |
Regfre• | Дата: Среда, 19 Декабря 2007, 17:42 | Сообщение # 9 |
 Бывалый
Группа: Участники
Сообщений: 98
Награды: 0
Замечания: 0%
Статус: 
| Помогите плиззз ! Хочу чтобы игрок перемещался вместе с машиной,а она непроваливалась под землю. Code ;LoadTerrain Example ;-------------------
Graphics3D 800, 600 ,32,1 SetBuffer BackBuffer()
Const TypePlayer = 1, TypeWall = 2 ,TypeFloor=4,TypeWeapon =5 TYPE_BULLET = 6 TypeAuto =7
Global lWire = False
Global windwave# Global grasscount
ramp=CreateMesh() ScaleEntity ramp,10,10,10 surf=CreateSurface( ramp )
segs=1 width#=2
Global g# = 0.3
JM#=terra_y# JUMP=0 K=1 bmwy# = -15
Global player=CreateSphere() PositionEntity player,120, 100, 1200 TurnEntity player,0,0,0 EntityRadius player, 5 EntityType player, TypePlayer
Global bull_sprite=LoadSprite( "spark.png" ) ScaleSprite bull_sprite,0.3,0.3 EntityRadius bull_sprite,1.5 EntityType bull_sprite,TYPE_BULLET HideEntity bull_sprite
Type Bullet Field rot#,sprite,time_out End Type
Collisions TYPE_BULLET,TypeFloor, 1, 1
For k=0 To segs x#=Float(k)*width/segs-width/2 u#=Float(k)/segs AddVertex surf,x,1,0,u,0 AddVertex surf,x,-1,0,u,1 Next For k=0 To segs-1 AddTriangle surf,k*2,k*2+2,k*2+3 AddTriangle surf,k*2,k*2+3,k*2+1 Next EntityFX ramp, 16 Or 1
grasstex=LoadBrush("grass.png",4) PaintMesh ramp, grasstex
Dim AirVents(20) Global iAirVentsCount% = 0
plan = CreatePlane() tp =LoadTexture("stone.bmp") EntityTexture plan,tp ScaleTexture tp, 5,5
camera = CreateCamera(player)
CameraRange camera,0.1,40000 ;CameraFogMode Camera,1 ;CameraFogColor Camera,255,255,255 ;CameraClsColor Camera,255,255,255 ;CameraFogRange Camera,10,100000000
light=CreateLight(0) RotateEntity light,45,0,0
; Load terrain Global terrain = LoadTerrain( "lmap.bmp" ) Global Y_TERR# = 0.0
; Set terrain detail, enable vertex morphing TerrainDetail terrain,4000,True
; Scale terrain ScaleEntity terrain,2,45,2
; Texture terrain grass_tex=LoadTexture( "ground.bmp" ) EntityTexture terrain,grass_tex,0,1 ScaleTexture grass_tex, 10,10 FreeTexture grass_tex
; Water Global watermesh=LoadMesh("20x20mesh.3ds") RotateMesh watermesh,90,0,0 RotateEntity watermesh,-90,0,0 ScaleEntity watermesh,100,100,10 PositionEntity watermesh, 0,29,0
watertexture=LoadAnimTexture("Wateranim.JPG",256,124,124,0,25) EntityTexture watermesh,watertexture,0,1 ScaleTexture watertexture,.01,.01 EntityShininess watermesh,0.2 EntityAlpha watermesh, 0.5 EntityFX watermesh, 16
house=LoadMD2( "house.md2" ) house_tex=LoadTexture( "text1.jpg" ) EntityTexture house,house_tex Y# = TerrainY(terrain, 50,50,160) PositionEntity house, 350,Y,360 ScaleEntity house, 0.3,0.3,0.3 TurnEntity house, 0,-50,0 FreeTexture house_tex EntityType house, TypeWall ;EntityRadius house, 20
;Tree tree = LoadMesh("Tree.b3d") FlipMesh tree ScaleEntity tree, .05, .05, .05 PositionEntity tree,0,0,0 TurnEntity tree ,0,0,0 EntityFX tree, 1000 EntityPickMode tree,1 HideEntity tree
sp=CreateSphere(32) PositionEntity sp,3000,1800,3000 ScaleEntity sp,50,50,50 texm=LoadTexture("moon/moon.JPG") EntityTexture sp, texm FreeTexture texm
Global sky=load_skybox("sky\sky") ;PositionEntity sky,x#,y#,z# ScaleEntity sky,5000,1000,5000 EntityOrder sky,1 EntityFX sky,9
m01 = LoadMesh("01.3ds") ScaleEntity m01,120,160,40 RotateEntity m01,90,90,0 PositionEntity m01,500,35,1450 EntityType m01, TypeWall tex2 =LoadTexture("FlatBrick.bmp") ScaleTexture tex2,0.2,1 EntityTexture m01,tex2 FreeTexture tex2
m03 = LoadMesh("Maps/map3.b3d") ScaleEntity m03 ,0.15,0.1,0.2 PositionEntity m03 ,500,45,1300 RotateEntity m03,0,90,0 EntityType m03,TypeFloor
m04 = LoadMesh("Maps/shooter.b3d") ScaleEntity m04,0.1,0.1,0.1 PositionEntity m04 ,540,46,760 EntityType m04,TypeFloor
mp5 = LoadMesh("mp5.b3d",player) PositionEntity mp5 ,4,-3,4 RotateEntity mp5,0,90,0 ScaleEntity mp5,0.2,0.2,0.2 EntityType mp5,TypeWeapon
bmw = LoadMesh("bmw/bmw.b3d") PositionEntity bmw ,540,51,1006 ScaleEntity bmw ,0.3,0.3,0.3 EntityType bmw,TypeAuto
Dim grass(1000) Dim grass_dir#(1000) grasscount=0 For j#=-1000 To 1000 Step 100 For i#=-1000 To 1000 Step 100 grass(grasscount)=CopyEntity(ramp) x#=(i+Rnd(150,150)) z#=(j+Rnd(150,150)) y#=TerrainY(terrain,x#,y#,z#); If Y < 30 Then X= 897897 PositionEntity grass(grasscount),x,y,z grass_dir(grasscount)=Rand(-450,450) grasscount=grasscount+1 Next Next HideEntity ramp
SeedRnd MilliSecs() For i=1 To 150 X# = Rnd(10,600) Z# = Rnd(10,600) tree1 = CopyEntity( tree ) Y# = TerrainY(terrain, X,50,Z) If Y < 30 Then X= 897897 PositionEntity tree1, X, Y, Z
Next
AmbientLight 100,100,100
Global waterflow# = 10 Global wavesize# = 0.05
Global surface=GetSurface(watermesh,1)
Global VertexCount=CountVertices(surface)
Type Vertices Field x# Field y# Field z# End Type
Dim Vertex.Vertices(VertexCount)
For A=0 To VertexCount-1 Vertex(a) = New Vertices Vertex(a)\x#=VertexX#(surface,a) Vertex(a)\y#=VertexY#(surface,a) Vertex(a)\z#=VertexZ#(surface,a) Next
Collisions TypePlayer, TypeWall, 2, 2 Collisions TypePlayer, TypeFloor, 2, 3 Collisions TypePlayer, TypeAuto, 2, 3 ;Collisions TypePlayer, TypeWeapon, 2, 3
While Not KeyDown( 1 )
; Toggle terrain shading value between 0 and 1 when spacebar is pressed If KeyHit(57)=True Then terra_shade=1-terra_shade
; Enable/disable terrain shading TerrainShading terrain,terra_shade
dest_yang# = 100 mxs = MouseXSpeed()/2:mys = MouseYSpeed()/2 dest_xang# = dest_xang# - mxs:dest_yang# = dest_yang# +mys xm# = CurveValue (xm#, dest_xang#, 3):ym# = CurveValue (ym#, dest_yang#, 3)
If KeyDown( 32 )=True Then TurnEntity player,0,-5,0 If KeyDown( 30 )=True Then TurnEntity player,0,5,0 If KeyDown( 31 )=True Then MoveEntity player,0,0,-1 If KeyDown( 17 )=True Then MoveEntity player,0,0,2 If KeyHit( 16 )=True Then lWire = Not lWire If KeyDown( 57 )=True And k=1 Then JUMP=1 If MouseHit(1)=True Then Fire
If KeyHit(56) CreateBullet( player ) EndIf
For b.Bullet=Each Bullet UpdateBullet( b ) Next
If EntityCollided (player,TypeAuto) bmw2 = LoadMesh("bmw/bmw.b3d",player) PositionEntity bmw2 ,0,-15,10 ScaleEntity bmw2 ,0.3,0.3,0.3 RotateEntity bmw2 ,0,180,0 ;If EntityY(bmw2)<TerrainY(terrain,x#,y#,z#) Then EntityY(bmw2)=TerrainY(terrain,x#,y#,z#)
bmwyyy# = TerrainY(terrain,x#,y#,z#) bmwyy#=TerrainY(terrain,x#,y#,z#)+15 ply#=bmwyy#+15 g#=0 PositionEntity player,EntityX(player),200,EntityZ(player) PositionEntity bmw2,0,bmwyy#,10 FreeEntity bmw
EndIf
TurnEntity sp,0,-0.001,0
wind(1)
If EntityCollided (player,TypeWall) Then g#=0 Else g#=0.3
;wIf EntityCollided (player,TypeWeapon) Then PositionEntity mp5,EntityX(player)+3,JM#+8,EntityZ(player)
If jump=1 Then jm#=jm#+g#:k=0 If jm#>max_y# Then jump=0:k=2 If k=2 Then jm#=jm#-g# If jm#<terra_y# Then jm#=terra_y#:k=1 If jump=0 If jm#>terra_y# Then jm#=jm#-g# End If
WireFrame lWire x#=EntityX(player) y#=EntityY(player) z#=EntityZ(player)
terra_y#=TerrainY(terrain,x#,y#,z#) max_y# = terra_y#+8
;RotateEntity player,ym#,xm#,zc# PositionEntity player,EntityX(player),JM#+8,EntityZ(player)
wd=wd+1 If wd=4 EntityTexture watermesh,watertexture,frame,1 frame=frame+1 If frame=22 Then frame=0 wd=0 EndIf
UpdateWater()
If terra_y < 14.5 CameraFogRange Camera,10,70 AmbientLight 0,250,250 Else CameraFogRange Camera,10,1000 AmbientLight 100,100,100 EndIf
RenderWorld UpdateWorld Text 0,0,"Use cursor keys to move about the terrain" Text 400,300 ,"*"
Flip
Wend
End
;--------------------- Function UpdateWater() For a=0 To VertexCount-1 Freq#=MilliSecs()/waterflow Vertex(a)\z#=Sin(freq+Vertex(a)\x#*300+Vertex(a)\y#*400)*wavesize VertexCoords surface,a,Vertex(a)\x#,Vertex(a)\y#,Vertex(a)\z# Next
UpdateNormals watermesh
End Function
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function Load_SkyBox( file$ ) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
m=CreateMesh()
;front face
b=LoadBrush(file +"_Le.png",49 ):: If Not B b=LoadBrush( file +"_Le.png",49 ):: s=CreateSurface( m,b ) AddVertex s,-1,+2,-1,0,0:AddVertex s,+1,+2,-1,1,0 AddVertex s,+1,-0,-1,1,1:AddVertex s,-1,-0,-1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b
;right face b=LoadBrush( file +"_fr.png",49 ):: If Not B b=LoadBrush(file +"_fr.png",49 ):: s=CreateSurface( m,b ) AddVertex s,+1,+2,-1,0,0:AddVertex s,+1,+2,+1,1,0 AddVertex s,+1,-0,+1,1,1:AddVertex s,+1,-0,-1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b
;back face b=LoadBrush(file +"_ri.png",49 ):: If Not B b=LoadBrush(file +"_ri.png",49 ):: s=CreateSurface( m,b ) AddVertex s,+1,+2,+1,0,0:AddVertex s,-1,+2,+1,1,0 AddVertex s,-1,-0,+1,1,1:AddVertex s,+1,-0,+1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;left face b=LoadBrush(file +"_bk.png",49 ):: If Not B b=LoadBrush(file +"_bk.png",49 ):: s=CreateSurface( m,b ) AddVertex s,-1,+2,+1,0,0:AddVertex s,-1,+2,-1,1,0 AddVertex s,-1,-0,-1,1,1:AddVertex s,-1,-0,+1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;top face b=LoadBrush(file +"_UP.png",49 ):: If Not B b=LoadBrush(file +"_UP.png",49 ):: s=CreateSurface( m,b ) AddVertex s,-1,+2,+1,0,1:AddVertex s,+1,+2,+1,0,0 AddVertex s,+1,+2,-1,1,0:AddVertex s,-1,+2,-1,1,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b FlipMesh m EntityFX m,9 EntityOrder m,1 RotateEntity m,0,90,0 Return m End Function
Function Fire() ;Animate mp5,1,0.2,1,9 shot = LoadSound("SHOOT1.WAV") PlaySound shot LoopSound shot CreateBullet( player ) For b.Bullet=Each Bullet UpdateBullet( b ) Next End Function
;*******Mouse Function************ Function CurveValue#(current#,destination#,curve) current#=current#+((destination#-current#)/curve) Return current# End Function ;********************************
;-------------------- Function wind(speed#) For i=0 To grasscount-1 x#=EntityX(grass(i)) z#=EntityZ(grass(i)) RotateEntity grass(i),0,grass_dir(i),Cos(windwave+z)*0.5 Next windwave=(windwave+speed#) End Function
Function CreateBullet.Bullet( player ) b.Bullet=New Bullet b\time_out=150 b\sprite=CopyEntity( bull_sprite,player ) EntityParent b\sprite,0 Return b End Function
Function UpdateBullet( b.Bullet ) b\time_out=b\time_out-1 If (b\time_out=0) Or EntityCollided( b\sprite,TypeWall ) FreeEntity b\sprite Delete b Return EndIf b\rot=b\rot+30 RotateSprite b\sprite,b\rot MoveEntity b\sprite,0,0,3 End Function
Function Go() bmw2 = LoadMesh("bmw/bmw.b3d",player) PositionEntity bmw2 ,0,-15,10 ScaleEntity bmw2 ,0.3,0.3,0.3 RotateEntity bmw2 ,0,180,0 ;If EntityY(bmw2)<TerrainY(terrain,x#,y#,z#) Then EntityY(bmw2)=TerrainY(terrain,x#,y#,z#)
bmwyyy# = TerrainY(terrain,x#,y#,z#) bmwyy#=TerrainY(terrain,x#,y#,z#)-15 ply#=bmwyy#+15 g#=0 PositionEntity player,EntityX(player),200,EntityZ(player) PositionEntity bmw2,0,bmwyy#,10
End Function Никак не пашет.! >( <<Используйте тег для отображения кода программы.
Маны Маны Маны Фигу Мигу Ёу!
Сообщение отредактировал Delmi - Среда, 19 Декабря 2007, 23:10 |
|
| |