OpenGL projekt v C++

C++ OpenGL projekt v C++

Tento projekt jsem začal jako způsob naučení se C++, OOP a OpenGL. Proto v něm nehledejte nic odborného, ale nemyslím si, že by byl tak hrozně psaný. Jeho zveřejněním mi jde o to podělit se o své znalosti a zkušenosti s jinými, možná i většími začátečníky než jsem já.

Program po spuštění jen vypustí krychli stálou rychlostí po ose X a umožní hýbat kamerou. Není to nic moc, ale hodlám v tomto projektu pokračovat, i když nevím co má být jeho cílem. :) To co se na scéně objeví se dá v kódu jednoduše upravit. Do funkce main() stačí před hlavní smyčku programu(while(1)) přidat kód:

new Cube(x, y, z, l);
    Cube::Cache->SetForce(x, y, z);
Cube::End();

První řádka vytvoří krychli na souřadnicích (X, Y, Z) o vzdálenosti L ke stěnám krychle. Druhý řádek potom nastaví vektor, po kterém se krychle bude, více méně (ano zde je jedna chyba), po stále trajektorii rovnoměrně pohybovat. Třetí řádek je nepovinný stejnou funkci zajistí použití toho prvního znovu. Znamená jen že další informace se nebudou týkat této krychle.

Pokud si chcete vytvořit vlastní těleso, stačí aby dědilo od class Shape, která je v Shapes/Shape.h a hlavičkový soubor vašeho tělesa bude includován do Shapes/Shapes.h. Musí implementovat všechny ryze virtuální metody classy Shape.

Funguje i gravitace, ale je vypnutá, protože kamera je reprezentována také objektem, na který gravitace také platí a neexistuje žádný náznak terénu nebo kolizí. Gravitaci zapnete v PhysicEngine.h a potom v main doporučuji změnit parametr předávaný class Player MOVABLE na STATIC. Potom na kameru nebude fungovat gravitace.

Jákekoliv dotazy okolo zdrojového kódu rád zodpovím.


Galerie

Program byl vytvořen v roce 2013.

 

Stáhnout

Staženo 439x (989.99 kB)
Aplikace je včetně zdrojových kódů v jazyce C++

 

  Aktivity (1)

Program pro vás napsal Irimitenkan
Avatar

Jak se ti líbí článek?
Celkem (1 hlasů) :
55555


 


Miniatura
Všechny články v sekci
C a C++

 

 

Komentáře

Avatar
Maxfx
Redaktor
Avatar
Maxfx:

Pekne ale.. Používáš staré OpenGl , které je zastaralé jak jeruzalém :D Doporučuji používat minimálně OpenGl 3.3 http://glew.sourceforge.net/ .

Odpovědět 8.4.2014 10:04
Být ovládán znamená být sledován, pod dohledem, špehován, veden, uzákoněn, reglementován, ohrazen, indoktrinován, pře...
Avatar
Irimitenkan
Redaktor
Avatar
Irimitenkan:

Ano, jsem si toho vědom... Ale v době kdy jsem s opengl sehnal jsem nenašel na novější zaručený návod, neuměl jsem dost na to abych si to překopal a nešlo mi to na linkeru rozběhat... teď to již mám předělaný na novější... ale maturuji tak to sem neuploaduju ;)

Editováno 8.4.2014 10:13
 
Odpovědět 8.4.2014 10:12
Avatar
Maxfx
Redaktor
Avatar
Odpovídá na Irimitenkan
Maxfx:

Tak hodně štěstí

Odpovědět 8.4.2014 10:18
Být ovládán znamená být sledován, pod dohledem, špehován, veden, uzákoněn, reglementován, ohrazen, indoktrinován, pře...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.