Wie kann ich Skidmark Trails machen? (wie in Tron sample)
Übersicht BlitzBasic Blitz3D
smr597Betreff: Wie kann ich Skidmark Trails machen? (wie in Tron sample) |
Do, Jul 31, 2008 21:56 Antworten mit Zitat |
|
---|---|---|
Ich möchte skidmarks machen in fliegen, wie Rauch Teilchen, zum Beispiel, wenn ich drücke space, erhalte ich eine skidmark. | ||
Tankbuster |
Do, Jul 31, 2008 22:10 Antworten mit Zitat |
|
---|---|---|
Was ist ein Skidmark ? | ||
Twitter
Download Jewel Snake! Windows|Android |
smr597 |
Do, Jul 31, 2008 22:27 Antworten mit Zitat |
|
---|---|---|
Ich bin nicht gut in Deutsch
"Reifen-Marke" Ich denke? |
||
BlackError |
Fr, Aug 01, 2008 11:18 Antworten mit Zitat |
|
---|---|---|
meinst du eine Bremsspur, die entsteht, wenn ein Auto schnell und hart bremst ?
Allerdings weiss ich nicht, was das mit fliegen zu tun hat ^^ Oder meinst du ne Rauchwolke (Partikel) ? Ist eben viel Raum für Spekulationen |
||
smr597 |
Fr, Aug 01, 2008 11:47 Antworten mit Zitat |
|
---|---|---|
Bremsspur ja
...aber, fliegen... schnell, mit eine funktione machen, wie Rauch Partikel ..ja oh man, mein Deutsch ist "fail" So, wie kann ich Bremsspur "function" machen |
||
Code der Verwirrung |
Fr, Aug 01, 2008 12:43 Antworten mit Zitat |
|
---|---|---|
can you explain in english? perhaps we will understand ist better
(my english is bad ) |
||
Dreamora |
Fr, Aug 01, 2008 12:49 Antworten mit Zitat |
|
---|---|---|
Das ist ein deutsches Board
englische Postings nach www.blitzbasic.com, hier werden sie entsorgt wenn sie in den Programmierboards sind. Decals kannst du erzeugen indem du dein Partikelsystem so erweiterst, dass es einen "Projektionsmodus" hat. In dem Modus würden die partikel zur kamera orientiert solange er fliegt, sobald er am boden ist aber nicht zur kamera orientiert entsprechend der PickedNY ausgerichtet damit es auf dem "boden" liegt. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
BlackError |
Fr, Aug 01, 2008 13:46 Antworten mit Zitat |
|
---|---|---|
Ich glaub noch komplizierter hättest du es für ihn nichtmehr erklären können | ||
Dreamora |
Fr, Aug 01, 2008 13:55 Antworten mit Zitat |
|
---|---|---|
Gut hier die einfache Liste
Benötigt: - Ein funktionierendes Single Surface Partikelsystem welches Orientierungsmodi besitzt Vorgehen: - Einfügen eines neuen Modus: "Projector" - Dieser Modus wird Partikel nicht "frei bewegen" sondern direkt auf den Boden legen (LinePick) und dann nicht mehr bewegen. Höchstens via Farbveränderungen ausblenden - Die Orientierung des Partikels (Decal dann in der Anwendung) erfolgt via PickedNY Das ist dann simpel, ist ja nicht das Beginner Board hier, also sind die 3D Grundlagen verstanden |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
smr597 |
Fr, Aug 01, 2008 14:19 Antworten mit Zitat |
|
---|---|---|
aus Englisch es namens ist Vertex-Trail
und meine muttersprache ist estnisch, mein englisch ist nicht besser vie deutsch "decals" ist nicht was ich möchte machen, ich habe eine code hier: media: http://www.speedyshare.com/682309614.html code: Code: [AUSKLAPPEN] smooth=True Global info1$="Tron demo" Global info2$="Features dynamic mesh creation" Global info3$="Use arrow keys to steer, A/Z to zoom" Graphics3D 1024,768,32,2 SetBuffer BackBuffer() grid_tex=CreateTexture( 32,32,8 ) ;ScaleTexture grid_tex,10,10 SetBuffer TextureBuffer( grid_tex ) Color 0,0,64:Rect 0,0,32,32 Color 0,0,255:Rect 10,10,22,22 SetBuffer BackBuffer() grid_plane=CreatePlane() EntityTexture grid_plane,grid_tex EntityBlend grid_plane,1 EntityAlpha grid_plane,.6 EntityFX grid_plane,1 ;mirror=CreateMirror() skid_tex=LoadTexture("skid.tga",2) pivot=CreatePivot() trail_mesh=CreateMesh() trail_brush=CreateBrush() BrushColor trail_brush,255,255,255 BrushBlend trail_brush,5 BrushFX trail_brush,1 BrushTexture trail_brush,skid_tex trail_surf=CreateSurface( trail_mesh,trail_brush ) AddVertex trail_surf,0,2,0,0,0 AddVertex trail_surf,0,0,0,0,1 AddVertex trail_surf,0,2,0,0,0 AddVertex trail_surf,0,0,0,0,1 AddTriangle trail_surf,0,2,3 AddTriangle trail_surf,0,3,1 AddTriangle trail_surf,0,3,2 AddTriangle trail_surf,0,1,3 trail_vert=2 bike=CreateSphere() ScaleMesh bike,.75,1,2 PositionEntity bike,0,1,0 EntityShininess bike,1 EntityColor bike,192,0,255 camera=CreateCamera() TurnEntity camera,45,0,0 cam_d#=30 light=CreateLight() TurnEntity light,45,45,0 add_flag=False Global hto=0 tex# = 0 While Not KeyHit(1) If KeyHit(17) wire=Not wire WireFrame wire EndIf turn=0 If smooth If KeyDown(203) turn=5:If hto<10 Then hto=hto+1 If KeyDown(205) turn=-5 :If hto>10 Then hto=hto-1 If turn add_cnt=add_cnt+1 If add_cnt=3 add_cnt=0 add_flag=True Else add_flag=False EndIf Else If add_cnt add_cnt=0 add_flag=True Else add_flag=False EndIf Else If KeyHit(203) turn=90 If KeyHit(205) turn=-90 If turn Then add_flag=True Else add_flag=False EndIf If turn TurnEntity bike,0,turn/10.0,0 EndIf If KeyDown(200) MoveEntity bike,0,0,.9 add_flag=True End If If KeyDown (57) If add_flag ; AddVertex trail_surf,EntityX(bike),2,EntityZ(bike),0,0 ; AddVertex trail_surf,EntityX(bike),0,EntityZ(bike),0,1 TFormVector(4,0,0,bike,0) v1 = AddVertex(trail_surf,EntityX(bike,1),1,EntityZ(bike,1)) v2 = AddVertex(trail_surf,EntityX(bike,1)+TFormedX(),1+TFormedY(),EntityZ(bike,1)+TFormedZ()) VertexNormal(trail_surf,v1,0,1,0) VertexNormal(trail_surf,v2,0,1,0) VertexTexCoords(trail_surf,v1,0,tex) VertexTexCoords(trail_surf,v2,1,tex) tex = tex + .25 AddTriangle trail_surf,trail_vert,trail_vert+2,trail_vert+3 AddTriangle trail_surf,trail_vert,trail_vert+3,trail_vert+1 AddTriangle trail_surf,trail_vert,trail_vert+3,trail_vert+2 AddTriangle trail_surf,trail_vert,trail_vert+1,trail_vert+3 trail_vert=trail_vert+2 Else VertexCoords trail_surf,trail_vert,EntityX(bike,1),1,EntityZ(bike,1) VertexCoords trail_surf,trail_vert+1,EntityX(bike,1)+TFormedX(),1+TFormedY(),EntityZ(bike,1)+TFormedZ() VertexTexCoords(trail_surf,trail_vert,0,tex) VertexTexCoords(trail_surf,trail_vert+1,1,tex) tex = tex + .05 EndIf End If UpdateWorld PositionEntity camera,EntityX(bike)-5,0,EntityZ(bike) MoveEntity camera,0,0,-cam_d ; PositionEntity camera,0,20,0 ; PointEntity camera,bike RenderWorld Flip Wend End can sie hilffen mich? mein Problem ist, das wenn ich drücke "space" wieder .. es setzt die vorherige mesh |
||
Dreamora |
Fr, Aug 01, 2008 14:39 Antworten mit Zitat |
|
---|---|---|
Was du willst ist ein Trail.
Das ist relativ simpel zu machen. Was dazu notwendig ist: 1. Die Möglichkeit Positionen zu speichern mit einer gewissen Lebensdauer (notwendig damit der Schweif nicht unendlich lange wird). Die Sortierung nach Lebensdauer ist dabei einfach da neue Positionen automatisch am Schluss der Liste sind. 2. Alle x Millisekunden speicherst du die aktuelle Position deines Objektes 3. In der Update Funktion clearst du die TrailSurface (triangle wie auch vertices) und erzeugst es neu. Jede gespeicherte Position erzeugt dabei einen "Pfosten" mit 2 Vertices (ein Pfosten ist eine Seite eines Quads) und erzeugst neue Triangles zwischen diesen Pfosten. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
smr597 |
Fr, Aug 01, 2008 16:14 Antworten mit Zitat |
|
---|---|---|
Das ist richtig
Ich habe meine Trail (im Code) Aber wie würde das update aussehen? |
||
Dreamora |
Fr, Aug 01, 2008 16:50 Antworten mit Zitat |
|
---|---|---|
Prinzipiell aus
Zitat: ClearSurface(TrailSurface) pos.TPosition = First TPosition oldPos.TPosition = After pos while(oldPos <> Last TPosition) ; erzeuge ein vertex v0 an position von pos, speicher ihn nach v0 im type für die nächste Position ; erzeuge einen vertex v1 an position von pos + yverschiebung, speicher ihn nach v1 im type für die nächste Position ; erzeuge die 2 triangles zwischen pos\v0, pos\v1, oldPos\v0, oldPos\v1 oldPos = pos pos = after pos wend wobei TPosition einfach der folgende Type ist Code: [AUSKLAPPEN] Type TPosition
field aliveUntil% field x# field y# field z# field v0 field v1 End Type |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Übersicht BlitzBasic Blitz3D
Powered by phpBB © 2001 - 2006, phpBB Group