LWJGL 3D Objekt Collision: Wie?

TheCreeper202

Bekanntes Mitglied
hallo forummitglieder
wie man am titel schon höhrt geht es um eine collision von 3d objekten und frage mich: wie?
ich habe angefangen ein first person spiel zu programmieren und schon folgende klasse die ein 3d objekt perfekt rendern nur die collision fehlt

Java:
package de.creeperfans.opengl.fps;


import de.creeperfans.opengl.model.ObjModel;
import de.creeperfans.opengl.texture.Texture;

/**
 *
 * @author Roman
 */
public class GameObject {
    
    private boolean collider;
    private ObjModel model;
    private Texture tex;
    private float positionX;
    private float positionY;
    private float positionZ;
    private float rotationX;
    private float rotationY;
    private float rotationZ;
    
    
    public GameObject(ObjModel model, Texture tex) {
        this.model = model;
        this.tex = tex;
        positionX = model.getX();
        positionY = model.getY();
        positionZ = model.getZ();
        rotationX = 0;
        rotationY = 0;
        rotationZ = 0;
        this.collider = false;
    }
    
    public void addCollider() {
        this.collider = true;
    }
    
    public void render() {
        tex.bind();
        model.render();
    }

    public boolean collides(Camera other) {   
	return Collision???;
    }

    public boolean hasCollider() {
        return collider;
    }
    
}

man bekommt die positionen von der camera so:
Java:
other.vector.x
other.vector.y
other.vector.z

um die rotationen wollt ich mich später kümmern

bitte um schnelle hilfe
thecreeper202
 

Helgon

Bekanntes Mitglied
Grad keine Zeit weiter drauf einzugehen, aber googel mal Collision Boxes oder Spheres. Das ist so das Gängige bei 3D Objekten
 

skappler

Aktives Mitglied
Wenn es ganz einfach sein soll und ohne viel aufwand, dann such mal nach Axis Aligned Bounding Boxes.
Ansonsten intressiert mich das Thema auch. Hat noch jemand Vorschläge?
 
G

Guest2

Gast
Moin,

das ist einfach ein weites Feld. Neben den rein CPU basierten Verfahren gibt es auch GPU basierte. Diese können dann beliebig komplex aufgebaut sein. Zwei Beispiele sind z.B.:

mit OpenGL: GPU Gems 3 - Chapter 29. Real-Time Rigid Body Simulation on GPUs
mit CUDA: GPU Gems 3 - Chapter 33. LCP Algorithms for Collision Detection Using CUDA

Für einen einfachen Shooter reichen aber CPU Bounding Boxes, es sei den man möchte das ganze Level physikalisch korrekt in Schutt und Asche legen können.

Viele Grüße,
Fancy
 

skappler

Aktives Mitglied
Die Octrees sehen intressant aus. Hab ich nie was von gehört. Das würde auch mein Problem lösen, effizient rauszufinden welche Objekte in Frage kommen.

Ansonsten sind diese ganzen CUDA Ansätze ja ganz schön und wahrscheinlich auch extrem schnell, aber zumindest für meine Zwecke eher mit Kanonen auf Spatzen :D
 

TheCreeper202

Bekanntes Mitglied
ok ich hab mir alles mal angeguck (bis auf pixelgenaue collision werd ich aber noch)
1. Axis Aligned Bounding Boxes (wird auch in minecraft verwendet) eignet sich aber nicht gut für mein space shuttle
2. ich hab mir die links angeguckt und nicht wirklich viel verstanden gibts die auch auf deutsch?
 

Helgon

Bekanntes Mitglied
ok ich hab mir alles mal angeguck (bis auf pixelgenaue collision werd ich aber noch)
1. Axis Aligned Bounding Boxes (wird auch in minecraft verwendet) eignet sich aber nicht gut für mein space shuttle
2. ich hab mir die links angeguckt und nicht wirklich viel verstanden gibts die auch auf deutsch?

bounding boxes eignen sich für alles, ob 2d oder 3d
 

TheCreeper202

Bekanntes Mitglied
ich hab eine first person camera und eine 3d welt jetzt wollte ich sowas wie den mesh collider bei unity 3d machen (aabb ist für würfel also nicht ganz so gut dafür)
das ist mein erstes problem
mein zweites ist dass man mit der camera auch die y achse verändern soll:
- sprung
- objekte bis zu einer größe von 0.5f kann man hach gehen
- tiefer als 0 kann man nicht fallen
das sind weitere probleme auch wie man bei fp herrausfindet welche seite das space shuttle berührt
wenn das alles iwer lösen kann: danke!!!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
U Kann nur ein Objekt mit LWJGL rendern Spiele- und Multimedia-Programmierung 2
coolian lwjgl glfw window zeigt nur grau an Spiele- und Multimedia-Programmierung 0
coolian slick lwjgl text darstellen mit UnicodeFont funktoniert nicht? Spiele- und Multimedia-Programmierung 11
F OpenGL (LWJGL) Shader Programmierung GLSL Spiele- und Multimedia-Programmierung 2
Meeresgott LWJGL 3 Problem mit einer Texture Spiele- und Multimedia-Programmierung 4
V LWJGL GUI Spiele- und Multimedia-Programmierung 1
V GUI in LWJGL 2 erstellen Spiele- und Multimedia-Programmierung 6
C GLSL Shaderprogrammierung in LWJGL 3 Spiele- und Multimedia-Programmierung 12
G Low Poly 3D LWJGL Shader Problem Spiele- und Multimedia-Programmierung 4
B LWJGL OpenGL SIGSEGV auf Linux (Verzweiflung :/) Spiele- und Multimedia-Programmierung 8
G LWJGL .obj .mtl loader Spiele- und Multimedia-Programmierung 3
G 2D animationen LWJGL Spiele- und Multimedia-Programmierung 0
pcfreak9000 "Allgemeine" Performance verbessern (LWJGL 2) Spiele- und Multimedia-Programmierung 2
G LWJGL Rendert nicht Spiele- und Multimedia-Programmierung 3
G lwjgl verwendung Spiele- und Multimedia-Programmierung 6
R [LWJGL] Skeletal Animation Spiele- und Multimedia-Programmierung 5
E LWJGL glGenVertexArrays() erzeugt doppelte IDs Spiele- und Multimedia-Programmierung 3
G Java 2D Spiel mit LWJGL verbinden Spiele- und Multimedia-Programmierung 1
Streeber Problem mit Transparenz/TextDrawing in LWJGL/Slick2d (OpenGL) Spiele- und Multimedia-Programmierung 1
K No Lwjgl Spiele- und Multimedia-Programmierung 2
T LWJGL 2.9.2: Seltsamer Effekt beim Rendern (VertexShader Problem?) Spiele- und Multimedia-Programmierung 3
T LWJGL: Terrain-Texturen / 2D-Array in Shader? Spiele- und Multimedia-Programmierung 2
S 2D-Render Probleme LWJGL 2 (Java) Spiele- und Multimedia-Programmierung 1
P java lwjgl Game Spiele- und Multimedia-Programmierung 0
T [LWJGL] Textur / File wieder freigeben Spiele- und Multimedia-Programmierung 4
F [LWJGL] Skeletal Animation 3D Spiele- und Multimedia-Programmierung 1
C Generelle Hilfe zur lwjgl Spiele- und Multimedia-Programmierung 0
D LWJGL gluLookAt "Umschauen" Problem Spiele- und Multimedia-Programmierung 0
D Problem mit Würfelanimierung in LWJGL Spiele- und Multimedia-Programmierung 7
RalleYTN LWJGL Vignette Spiele- und Multimedia-Programmierung 2
E LWJGL Switchen zwischen gluOrtho und gluPerspective Spiele- und Multimedia-Programmierung 0
RalleYTN LWJGL Rotation Spiele- und Multimedia-Programmierung 1
C LWJGL Color Picking Textures deaktivieren Spiele- und Multimedia-Programmierung 0
K FBO Framebuffer object [LWJGL] 2D tutorial gesucht Spiele- und Multimedia-Programmierung 2
K [LWJGL] 2D Tunneler Hintergrund Spiele- und Multimedia-Programmierung 7
S LWJGL 3d-spieleentwicklung Spiele- und Multimedia-Programmierung 3
H LWJGL-Renderfail Spiele- und Multimedia-Programmierung 1
Seikuassi LWJGL - Texturen flackern Spiele- und Multimedia-Programmierung 2
Androbin LWJGL - Kollisions-Bug (Fallen) Spiele- und Multimedia-Programmierung 14
K Schiessen in 2D (LWJGL) Spiele- und Multimedia-Programmierung 2
S LWJGL Kamera Problem - Alles verzerrt Spiele- und Multimedia-Programmierung 4
X LWJGL | Parent.isDisplayable() must be true | wie kann man das zu true machen? Spiele- und Multimedia-Programmierung 0
X [LWJGL] Binden von Texturen per PNG File und Texture Sheet Spiele- und Multimedia-Programmierung 1
X LWJGL - Anklick baren Button erstellen aber wie? Spiele- und Multimedia-Programmierung 6
U Quadrate anklicken LWJGL Spiele- und Multimedia-Programmierung 3
B LWJGL / OPENGL Kriege Depth-Test nicht hin :( Spiele- und Multimedia-Programmierung 0
B LWJGL Manche Seiten werden transparent angezeigt Spiele- und Multimedia-Programmierung 2
T LWJGL VBO's funktionieren nicht, geben aber auch keinen Fehler Spiele- und Multimedia-Programmierung 0
U Komische fragmente bei LWJGL Spiele- und Multimedia-Programmierung 6
B LWJGL StackOverFlow Problem nach 30sekunden. (Pong) Spiele- und Multimedia-Programmierung 2
Q LWJGL - Alpha-Probleme Spiele- und Multimedia-Programmierung 2
S [LWJGL] Zweimal selbe Textur trotz unterschiedlicher IDs Spiele- und Multimedia-Programmierung 3
O LWJGL AWTGLCanvas Tiefe auf 1 beschränkt Spiele- und Multimedia-Programmierung 5
Seikuassi LWJGL-Problem Spiele- und Multimedia-Programmierung 2
S [LWJGL] schwarzer Bildschrim beim rendern von .obj Model Spiele- und Multimedia-Programmierung 2
S [lwjgl] Renderbug bei mehreren Objekten Spiele- und Multimedia-Programmierung 2
R LWJGL: OpenGL Fehler - weitere Informationen auslesen möglich? Spiele- und Multimedia-Programmierung 2
S LWJGL Kamera Koordinaten invertiert. Spiele- und Multimedia-Programmierung 2
M LWJGL Text rendern Spiele- und Multimedia-Programmierung 3
B LWJGL Mauskoordinaten Spiele- und Multimedia-Programmierung 1
J LWJGL Update Schleife (Snake) Spiele- und Multimedia-Programmierung 6
B LWJGL Display.update() ist langsam Spiele- und Multimedia-Programmierung 5
R LWJGL: Performance glBegin, drawList, ... Spiele- und Multimedia-Programmierung 16
R LWJGL: Object Loader -> .obj, .c4d, ... laden Spiele- und Multimedia-Programmierung 3
R LWJGL: Textur -> unsichtbare Stellen, wie erzeugen? Spiele- und Multimedia-Programmierung 4
A LwJGL - Animation Stockt Spiele- und Multimedia-Programmierung 5
R [lwjgl] Cursor -> versetzt Zeichnen / Bild ist umgedreht Spiele- und Multimedia-Programmierung 2
R LWJGL: 3D Picking Spiele- und Multimedia-Programmierung 4
F LWJGL: Textur ändern mit GL11.readPixels Spiele- und Multimedia-Programmierung 5
F LWJGL: Licht und GL_LINES funktioniert nicht Spiele- und Multimedia-Programmierung 6
A [LWJGL] BMP Textur wird nicht richtig dargestellt Spiele- und Multimedia-Programmierung 8
S LWJGL Rechteck wird nicht gezeichnet Spiele- und Multimedia-Programmierung 6
F LWJGL: Is undefined? Spiele- und Multimedia-Programmierung 7
F LWJGL Kamerabug Spiele- und Multimedia-Programmierung 2
F LWJGL Problem mit Erstellen eines Objekts und der Kamera Spiele- und Multimedia-Programmierung 5
F LWJGL Dreidimensionaler Würfel Spiele- und Multimedia-Programmierung 15
P LWJGL oder OpenGL (C++) Spiele- und Multimedia-Programmierung 7
P "Tiefe" in Objekten - LWJGL Spiele- und Multimedia-Programmierung 12
S LWJGL Kamera Frage Spiele- und Multimedia-Programmierung 2
V Komischer Fehler in LWJGL Spiele- und Multimedia-Programmierung 18
Z lwjgl oder jogl nutzen Spiele- und Multimedia-Programmierung 9
Y LWJGL Hintergrund Spiele- und Multimedia-Programmierung 7
Creylon [LWJGL] Textur wird falsch angezeigt Spiele- und Multimedia-Programmierung 12
Creylon [LWJGL] Spiel Exportieren Spiele- und Multimedia-Programmierung 2
Creylon [LWJGL] 2D Sprite Rotieren/Drehen Spiele- und Multimedia-Programmierung 6
CookieSoft LWJGL Ubuntu 12.04 Fehler Spiele- und Multimedia-Programmierung 7
E [LWJGL] Karusell, mehrere Objekte drehen sich um einen Mittelpunkt Spiele- und Multimedia-Programmierung 31
F lwjgl - Skysphere Spiele- und Multimedia-Programmierung 3
CookieSoft Slick und LWJGL Texture lag Spiele- und Multimedia-Programmierung 13
U OpenGl 1.1 (LWJGL GL11.*) und weiter? Spiele- und Multimedia-Programmierung 7
0 Grafikfehler LWJGL Spiele- und Multimedia-Programmierung 2
A LWJGL 3D Objekte Kollision Spiele- und Multimedia-Programmierung 3
Luk10 (LWJGL) Aufwendiges Animieren von Texturen Spiele- und Multimedia-Programmierung 16
S (LWJGL) VertexBufferObjects Spiele- und Multimedia-Programmierung 20
T LWJGL Grafik meines Projektes läuft nicht korrekt auf meinem iMac Spiele- und Multimedia-Programmierung 19
B LWJGL/OpenGL rendert manche Objekte nicht Spiele- und Multimedia-Programmierung 6
H LWJGL: Fragen zum Verständnis Spiele- und Multimedia-Programmierung 7
T LWJGL Gui erstellen Spiele- und Multimedia-Programmierung 7
Kenan89 lwjgl Exception Spiele- und Multimedia-Programmierung 3
Z Anfängerfrage: Text anzeigen mit LWJGL Spiele- und Multimedia-Programmierung 2

Ähnliche Java Themen

Neue Themen


Oben