2D Ragdolls
Übersicht

Gehe zu Seite Zurück 1, 2, 3 Weiter
Klaas |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zitat: Jaja, das ist ja alles schön und gut, aber nicht unbedingt realistisch, da die Rotation völlig unbeachtet bleibt (Körper dreht sich nicht) ... deshalb schrieb ich ... Zitat: Ist nichts komplettes aber evtl ein Ansatz
bissel Arbeit muß man schon investieren! |
||
![]() |
Plasma(alt)Betreff: Nette sache ! |
![]() Antworten mit Zitat ![]() |
---|---|---|
Weitermachen !!! ![]() |
||
DIV is dead ! |
![]() |
rambo256 |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Danach oder in den Pausen werde ich dann wohl noch Zeit dazu finden ![]() Aber Jendan ist ja auch noch da ![]() |
||
Asus F53z
Das Leben ist eine reine Konkatenation... |
Klaas |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Na dann greif ich dir nochmal schnell unter die Arme ![]() Hier das was ich mit dem apprallen meine. Stell dir die Vektoren als Bewegungsvektoren vor. Code: [AUSKLAPPEN] Graphics 800,600,32,2 SetBuffer(BackBuffer()) Global int_x#,int_y# Global mx1# = 400 Global my1# = 300 Type colli Field x1#,y1# Field x2#,y2# End Type createLine(0,300,300,450) createLine(300,450,600,400) createLine(600,400,800,300) timer = CreateTimer(25) While Not KeyHit(1) WaitTimer(timer) Cls mx2# = MouseX() my2# = MouseY() Color(255,255,255) Line(mx1,my1,mx2,my2) For l.colli = Each colli Color(255,255,255) Line(l\x1,l\y1,l\x2,l\y2) ;-- If LinesCross(l\x1#,l\y1#, l\x2#,l\y2#, 400,300, MouseX(),MouseY()) ;delta Kollisionslinie errechnen dx# = l\x1 - l\x2 dy# = l\y1 - l\y2 ;die Magnitude(Vektorlänge) mag# = Sqr(dx^2 + dy^2) ;Vektor Normale (aufrecht auf der Colli-linie) nx# = dy / mag ny# = -dx / mag ; zeichnen der Normale Color(20,255,20) Line(int_x,int_y,int_x+nx*30,int_y+ny*30) ;-- ;nun das ganze für den eintritts-vektor mdx# = int_x - mx1 mdy# = int_y - my1 mmag# = Sqr(mdx^2 + mdy^2) mnx# = mdx / mmag mny# = mdy / mmag ;-- ;das Punktprodukt von eintritts-vektor und Liniennormale vdotN# = mdx * nx + mdy * ny ; hier wird die Reflektion errechnet NFx# = -2.0 * Nx# * VdotN# NFy# = -2.0 * Ny# * VdotN# Vx# = mdx# + NFx# Vy# = mdy# + NFy# ;neuen Vektor zeichnen Color(20,20,255) Line(int_x,int_y,int_x+vx,int_y+vy) ;hier nochmal den Kollisionspunkt zeichnen Color(255,20,20) Line(l\x1,l\y1,l\x2,l\y2) Oval(int_x-2,int_y-2,5,5) End If Next Flip() Wend End Function createLine(x1#,y1#,x2#,y2) l.colli = New colli l\x1 = x1 l\y1 = y1 l\x2 = x2 l\y2 = y2 End Function Function LinesCross(x0#,y0#, x1#,y1#, x2#,y2#, x3#,y3# ) n# = (y0#-y2#)*(x3#-x2#) - (x0#-x2#)*(y3#-y2#) d# = (x1#-x0#)*(y3#-y2#) - (y1#-y0#)*(x3#-x2#) If Abs(d#) < 0.0001 ; Lines are parallel! Return False Else ; Lines might cross! Sn# = (y0#-y2#)*(x1#-x0#) - (x0#-x2#)*(y1#-y0#) AB# = n# / d# If AB#>0.0 And AB#<1.0 CD# = Sn# / d# If CD#>0.0 And CD#<1.0 ; Intersection Point int_X# = x0# + AB#*(x1#-x0#) int_Y# = y0# + AB#*(y1#-y0#) Return True End If End If ; Lines didn't cross, because the intersection was beyond the end points of the lines EndIf ; Lines do not cross! Return False End Function |
||
Gast |
![]() Antworten mit Zitat |
|
---|---|---|
Welcher ****ser hat das hier zu den Beginnerfragen verschoben?
Das hatte ich schon mal, und das war auch keine Beginner-Frage, ich frag mich echt was das soll... |
||
Klaas |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Schon komisch, versteh ich auch nicht. Ist zwar keine Atomphysik hier ... aber Beginner ?
Hab auch schon das Forum nach dem Thread dursuchen müssen. |
||
![]() |
rambo256 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Find ich auch,das das nicht hierhin gehört. Die Hälfte des Forums wusste bestimmt noch nicht mal was Ragdoll ist,bevor sie das gelesen haben.
@Klaas: Jo danke,wenn ich Zeit finde dann wende ich das mal an. |
||
Asus F53z
Das Leben ist eine reine Konkatenation... |
ThorbenSchröderEhemaliger Admin |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nicht ausfallend werden Jungs!
Ich schiebs mal 2D Graphics, ich hoffe da kams her. Trotzdem müsst ihr hier nicht wild rumschreien nur weil mal ein Thread nicht ganz so sinnig verschoben wird. Die Mods leisten doch zu 95% echt solide Arbeit. Thorben |
||
![]() |
DivineDominion |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Sache mit der Echtzeitrotation für Images und vorallem das OGL-Problem ist in BMax leicht zu lösen. Sollte einer von euch das kaufen wollen kann er das damit super Probieren. Klasse Arbeit bisher - die Visualisierung dann ist auch ein Klacks ![]() |
||
christian.tietze@gmail.com - https://christiantietze.de
macOS |
Gast |
![]() Antworten mit Zitat |
|
---|---|---|
Mal schaun, wenn das mit BlitzMax nichts wird, muss ich wohl mit Allegro weitermachen (trotz Speicherfehler ![]() Ich versuch übrigends gerade, Seile oder ähnliches zu implementieren, die man dann auch an das Männchen hängen kann, klappt schon ganz gut, ist aber noch nicht "massentauglich" |
||
![]() |
rambo256 |
![]() Antworten mit Zitat ![]() |
---|---|---|
DivineDominion hat Folgendes geschrieben: Die Sache mit der Echtzeitrotation für Images und vorallem das OGL-Problem ist in BMax leicht zu lösen.
Was heißt OGL ? |
||
Asus F53z
Das Leben ist eine reine Konkatenation... |
Klaas |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
OGL = OpenGL = Open Graphics Libary | ||
![]() |
rambo256 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dacht ich mir ja auch,aber wieso sollte das ein Problem in Blitz3D sein? | ||
Asus F53z
Das Leben ist eine reine Konkatenation... |
Klaas |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
auf der ersten Seite des Threads sagte jenDan:
Zitat: Da gibts bei gamedev.net unter articles echt geile beispiele, das problem ist nur, das die OpenGL benutzen. Werde aber mal versuchen, ob ich das nicht nach BlitzBasic portieren kann... |
||
![]() |
rambo256 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aha! *JenDan ganz scharf anguck*
er weiß schon warum ![]() Thx! |
||
Asus F53z
Das Leben ist eine reine Konkatenation... |
Gast |
![]() Antworten mit Zitat |
|
---|---|---|
Allerdings weiß ich das ![]() Naja egal, ich setze gerade das von gamedev.net in Blitz2D um, ist aber echt schwierig, weil Blitz2D so beschränkt ist (aber dafür einfach) |
||
ke^kx |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wow, nicht schlecht, was man mit Blitz alles machen kann^^ Weiter so.
Jiriki |
||
http://i3u8.blogspot.com
Asus Striker II Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-) Geforce 9800 GTX 2GB RAM |
![]() |
KabelbinderSieger des WM-Contest 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das ist bei dem Spiel "N" doch genauso, oder.
Ich wollte auf diese Art und Weise auf mal ein realistisches Spinnennetz machen, aber ich wusste nicht, wie ich das mit den Dreifach- und Vierfachknoten machen sollte ![]() |
||
<Wing Avenger Download> ◊◊◊ <Macrophage Download> |
feiderehemals "Decelion" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hmmm, Rambo, das gibt aber lustige Effekte:
![]() |
||
![]() |
rambo256 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jo,das ist mir schon bekannt ![]() Das problem ist,das diese lines variable Größen haben.Das muss man ändern. tut mir leid,aber @the moment entwickle ich was anderes,sonst würde ich da weiter machen. Ich denke aber,das ich das nach ner Zeit mal wieder aufgreifen kann ![]() |
||
Asus F53z
Das Leben ist eine reine Konkatenation... |
Gehe zu Seite Zurück 1, 2, 3 Weiter
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group