3D Feuer
Übersicht

![]() |
LunatixBetreff: 3D Feuer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Leutz!
Ich bin Grad dabei einen EGO-Shooter zu Proggen, kann schon schiessen(MP5) und granaten werfen, Zombies Laufen auch schon rum Die kann man abknallen Da hätt da mal Zwei Problemchen : 1. Die Zombie's Werden ja durch Types erstellt. Nun Erstelle ich aber auch mehrere Fässer mit Types, die Fässer Brennen. Wenn ich drauf Schiesse explodieren sie. FRAGE : wie mach ich das die Zombie's leben verlieren? BlitzBasic: [AUSKLAPPEN]
Das Geht nicht, auch ne sphere die sich bei der Explosion vergrössert geht nicht, hatt dann keine colli Hatt Jemand ne Idee wie ich das mach? 2. Meine Fässer brennen ja. Das ist aber nur ein Sprite der mit rnd(3,7) vergrössert wird, sihet nit so toll aus. Wie mache ich am besten gutes Feuer(z.B. Half Life²)[/b] |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
- Zuletzt bearbeitet von Lunatix am Mo, Mai 23, 2005 13:47, insgesamt einmal bearbeitet
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
1. Warum sollte ne kolli nicht funktionieren, musst nur halt richtig definieren und prüfen.
2. dafür solltest du dir dann ne partikel engine basteln/suchen. |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zu 1 : Kann ich denn nicht irgentwie die Distance Zwischen Dem Zombie und Dem Fass Feststellen? vielleicht an der Stelle des Fasses zusätzlich noch n ucbe machen und die distance vom cube und dem Zombie?
Zu 2 : ist das nicht langsam? |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
1. also für die Distance brauchst du nicht nen extra cube erstellen, musst nur prüfen, ob das Fass rennt und ob der zombie in ner bestimmten nähe ist, um schaden zu nehmen.
oder du nimmst entityradius, um dem Fass ein Größeres, unsichtbares Volumen zu geben und prüfst dann auf kollision mit dem Zombie 2. kommt drauf an, hab mich in die Materie selbst noch nicht eingearbeitet, aber das ist gerade dass, worauf man achten muss, dass es nicht zu komplex und somit rechenintensiv wird. |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zu 1 : Das geht eben nicht!
wenn ich : BlitzBasic: [AUSKLAPPEN]
Mache dann geht das nicht ->RuntimeError ;Type Field not Found wenn es einen größeren Radius hat, kann doch der Zombie nit am Fass vorbeilaufen, sondern Slidet drumherum[/syntax] |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
1. dafür gibt es einen befehl.
BlitzBasic: [AUSKLAPPEN]
2. nein, das ist sicherlich schneller und kompfortabeller, als es du machen wirst. |
||
between angels and insects |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zu 1 : LESEN! entitydistance(Z\Mesh,T\Ton) geht nicht, das ist es ja! ![]() @Jan: weisst wo die DX7 userlib ist? |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
zu 1: Ich vermute du iterierst nicht durch die Instanzen von Tonne und Zombie. Der Befehl als solches ist vollkommen korrekt.
zu dx7 lib: BB3D arbeitet von Hause aus mit DX7. da brauchts keine lib. Für Bmax ist eine DX7-lib angedacht, aber die steht noch aus. EDIT: oha. mea culpa, wusste von einer solchen Erweiterung nichts. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
- Zuletzt bearbeitet von BladeRunner am Di, Mai 17, 2005 13:51, insgesamt einmal bearbeitet
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
hm, dann existieren diese objekte nciht!
http://blitzbasic.com/Communit...&hl=DX |
||
between angels and insects |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier codeausschnitt(ist allerdings nicht genau, hab den grad nicht hier) :
ausserdem kann ich im Spiel die Tonne Ja sehen und abschiessen sie explodiert auch und Die Variable Explo ist auch 1 BlitzBasic: [AUSKLAPPEN]
P.S.: Repat oder While Schleife? was ist better?[/syntax] |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
die Tonne ist an der stelle nicht da.
BlitzBasic: [AUSKLAPPEN]
|
||
between angels and insects |
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der Zombie slidet nur drum herum, wenn du auch kollisionstypen etc. setzt, bei dem was du bisher geschrieben hast, ist nirgendswo ne Kollision definiert.
und du bei der Prüfung der Distanz musst du jeden Zombie und jede Tonne durchgehen, sowas habe ich in deinen Posts auch noch nicht gesehen. du schreibst du hast dne Code gerade nicht da, warte einfach mal bis du wieder zu Hause, wherever bist, und zeig dann einfach mal deinen kompletten Code, ansonsten ist es schwierig, dir zu helfen. [edit] heute habe ich irgendwie das Pech gepachtet, dass kurz vor mir jemand das gleiche schreibt, das gibt es doch garnicht^^ |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Skey-Z : dein Edit versteh ich nit so ganz..
es hat alles ne kollision, wie gesagt es funzt alles, bis auf dass ich nicht die distance prüfen kann, er sagt mir Type Field Not Found ich hab ja auch eine Tonne am anfang global geladen, da hab ich kei Type, das geht mit der distance weil es ja-> entitydistance(Z\Mesh,Fass) ist. aber bei zwei verschiedenen Types geht es nicht, aber ich kann ja auch nicht 50 Fässer einzeln laden positionieren und updaten! |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
T ist Global, aber Leer!
wenn du =each tonne nimmst, ist e dannach leer! Kapierst du es? T ist leer, Ich kann nihct mehr machen, als dir die Compiler fehler meldung übersetzten, weil sie Stimmt! der Compiler schreibt das cniht, um dich zu ärgern! |
||
between angels and insects |
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
ist auch nicht so wichtig, eher off-topic, das war das 3. mal, das mir jemand mit fast dem gleichen inhalt zuvor gekommen ist, in verschiedenen Themen. | ||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Heisst also das ich die entfernung zwischen T\TonMesh und Z\Mesh nicht prüfen kann?
wenn das der Fall ist : kann ich in einer for schleife für 4 tonnen einfach in jede tonne ein cube setzen und dann cube und z\Mesh testen? BlitzBasic: [AUSKLAPPEN]
|
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Nochmal!
Häät da wieder ein new prob.: Feuer! Ich hab schon mehrere Feuer funcs ausm Forum tested aber war meistens nur 2D. Meine Frage: wie ratet ihr mir das jetz in die Tat umzusetzen, Feuer in 3D und möglichst wenig FPS verbrauch? |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
![]() |
Devils Child |
![]() Antworten mit Zitat ![]() |
---|---|---|
meine fire-engine.
nimm sie! Code: [AUSKLAPPEN] Graphics3D 640, 480, 32, 2 AmbientLight 255, 255, 255 SetBuffer BackBuffer() SeedRnd MilliSecs() ;Camera Cam = CreateCamera() CameraRange Cam, .1, 1000000 CameraClsColor Cam, 70, 70, 255 ;Vertex Vertex = CreatePivot() ;Sprites Global Fire[100], Smoke3[100] Dim xtrans2#(100), ytrans2#(200), ztrans2#(200) For i = 1 To 100 Fire[i] = LoadSprite("Smoke.bmp") EntityColor Fire[i], Rnd(150, 255), Rnd(0, 100), 0 xtrans2#(i) = Rand(-100, 100) ytrans2#(i) = Rand(0, 400) ztrans2#(i) = Rand(-100, 100) xtrans2#(i) = xtrans2#(i) / 10000 ytrans2#(i) = ytrans2#(i) / 10000 ztrans2#(i) = ztrans2#(i) / 10000 Smoke3[i] = LoadSprite("Smoke.bmp") EntityAlpha Smoke3[i], .1 Next cnt1 = 1 cnt2 = 50 PositionEntity Cam, 0, 0, 5 While Not KeyHit(1) If KeyDown(200) Then p2 = p2 - 1 If KeyDown(208) Then p2 = p2 + 1 If KeyDown(203) Then p1 = p1 + 1 If KeyDown(205) Then p1 = p1 - 1 PositionEntity Cam, Sin(p1) * 5, Cos(p2) * 5, Cos(p1) * 5 PointEntity Cam, Vertex cnt1 = cnt1 + 1: If cnt1 > 100 Then cnt1 = 1 cnt2 = cnt2 + 1: If cnt2 > 100 Then cnt2 = 1 PositionEntity Fire[cnt1], 0, 0, 0 PositionEntity Smoke3[cnt2], 0, 0, 0 For i = 1 To 100 TranslateEntity Fire[i], xtrans2#(i), ytrans2#(i), ztrans2#(i) TranslateEntity Smoke3[i], xtrans2#(i), ytrans2#(i), ztrans2#(i) Next RenderWorld Flip Wend |
||
*X-Ware Member*
Mission to Hell[Ego-Shooter] Hier Vollversion runterladen: http://patrick-sch.de/spiele/m...ersion.zip ich antworte auf jede PN |
![]() |
Devils Child |
![]() Antworten mit Zitat ![]() |
---|---|---|
sup. hab sie verbessert, endlich hab ich das
mit dem for...each... verstanden ![]() Code: [AUSKLAPPEN] Graphics3D 640, 480, 32, 2
AmbientLight 255, 255, 255 SetBuffer BackBuffer() SeedRnd MilliSecs() ;Camera Cam = CreateCamera() CameraRange Cam, .1, 1000000 CameraClsColor Cam, 70, 70, 255 PositionEntity Cam, 0, 0, -10 ;Type Fire Type Fire Field entity, alpha#, xt#, yt#, zt# End Type While Not KeyHit(1) AddFlame() UpdateFire() RenderWorld Flip Wend Function AddFlame() f.Fire = New Fire f\entity = LoadSprite("Smoke.bmp") EntityColor f\entity, Rnd(150, 255), Rnd(0, 100), 0 f\xt# = Rand(-100, 100): f\xt# = f\xt# / 10000 f\yt# = Rand(-10, 400): f\yt# = f\yt# / 10000 f\zt# = Rand(-100, 100): f\zt# = f\zt# / 10000 f\alpha# = 1 End Function Function UpdateFire() For f.Fire = Each Fire If f\alpha# > 0 Then MoveEntity f\entity, f\xt#, f\yt#, f\zt# f\alpha# = f\alpha# - .01 EntityAlpha f\entity, f\alpha# / 2 Else HideEntity f\entity EndIf Next End Function die smoke.bmp datei findet ihr da, wo bb intalliert ist. einfach unter "SMOKE" suchen ![]() |
||
*X-Ware Member*
Mission to Hell[Ego-Shooter] Hier Vollversion runterladen: http://patrick-sch.de/spiele/m...ersion.zip ich antworte auf jede PN |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
THX!!!!!
Werds probieren. MFG JP |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group