Interakce objektů v openGL – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Interakce objektů v openGL – C / C++ – Fórum – Programujte.comInterakce objektů v openGL – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
karel
~ Anonymní uživatel
121 příspěvků
18. 12. 2008   #1
-
0
-

Zdravim, mam dotaz, jak na interakci mezi objekty? Myslim tim, kdyz vykresluji objekty pomoci glvertexu -

glBegin(GL_QUADS);
glVertex2i(0,0);
glVertex2i(1,0);
glVertex2i(1,1);
glVertex2i(0,1);
glEnd();

tak pokud se mi ty dva objekty dotknou, pak aby se oba zrusili...napriklad srazka s prekazkou. Vim ze to bude asi slozitejsi, ale jake budou podminky? Kde se to bude osetrovat? ve fci onDisplay? Nejak mi nejde vymyslet jak na to. Dekuju za napad

Nahlásit jako SPAM
IP: 89.102.23.–
Reklama
Reklama
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
18. 12. 2008   #2
-
0
-

před renderováním objektu musíš spočítat, jestli došlo ke kolizi nebo ne, na základě výsledku rozhodnout, zda objekt na scénu patří nebo ne ;)

Nahlásit jako SPAM
IP: 212.96.172.–
o-lox0
Super člen
19. 12. 2008   #3
-
0
-

Když se ptáš strašně obecně tak jukni semhle
http://nehe.ceske-hry.cz/tut_30.php
Se svým OnDisplay vypadáš že nepoužíváš zatim žádnou svou další funkci (a spravne struktury souřadnic a vektorů)
na přesun objektů, tam se hodí rovnou dát i test vzdálenosti 1 Obj. od všech ostatních.
Když je menší než rozměr (ty tvy vertexy*) srazily se. Chce to umět analytickou geometrii, tj. SŠ matematika.
Pak je to práce s vektorama, rovnice pro polopřímku,rovinu a hlídání času nárazu.
Nebo si bez rovnic pohyb kouskuješ v čase na malé dílky.

Příp. zkus implementovat nějaký hotový komplexní kolizní systém, (ale tim se to nenaucis)
http://www.codemonsters.de/home/content.php?show=freelibraries#6

btw sám jsem se kolizím v pravém 3D povětšinou šikovně vyhnul, stačilo mě to ořezat vždy do 2D
a použít jednu Funkci pro r. o 2 neznámejch


* dulezitejsi pozici objektu urcujes totiz v glTranslate/glMultMatrix

Nahlásit jako SPAM
IP: 85.71.152.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 89 hostů

Podobná vlákna

Interakce s Pythonem — založil Lukáš

Interakce s webem — založil little0inker

Hra - interakce se soupeřem — založil Vorel

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý