Panda3D | |
---|---|
Typ | Herní engine |
Vývojář | Disney , C.M.U. |
Zapsáno v | C++ , Python |
Operační systém | Microsoft Windows , Linux , Mac OS X , FreeBSD |
První vydání | 2002 |
Nejnovější verze | 1. 10. 11 ( 7. ledna 2022 [1] ) |
Čitelné formáty souborů | EGG [d] a nádoba Panda3D Bam [d] |
Vygenerované formáty souborů | EGG [d] a nádoba Panda3D Bam [d] |
Licence |
Licence Panda3D (upraveno BSD ) 28. května 2008 Do 28. května 2008 : Licence BSD |
webová stránka | panda3d.org |
Panda3D je herní engine , který zahrnuje grafiku, zvuk, I/O , detekci kolizí a další funkce související s vytvářením 3D her. [2]
Panda3D je software s otevřeným zdrojovým kódem pod upravenou licencí BSD . Vydání před 28. květnem 2008 nebyla považována za svobodný software kvůli určitým chybám v návrhu staré licence Panda3D. Navzdory tomu mohou být starší verze Panda3D také bezplatně použity pro bezplatný i komerční vývoj her.
Hlavním programovacím jazykem pro práci s Panda3D SDK je Python , ale jádro enginu je napsáno v C++ . Pro zajištění přístupu k funkcím jádra z Pythonu se používá automatické generování funkcí wrapperu.. Tento přístup dává vývojářům výhody jazyka Python , jako je rychlost učení a vývoje, automatická správa paměti ( garbage collection ), bohatá knihovna dalších komponent při zachování výkonu kompilovaného jazyka v jádře enginu.
Mezi uživateli Panda3D jsou vývojáři několika velkých komerčních her ( Toontown Online, Pirates of the Caribbean Online ), několik open source projektů a řada univerzitních kurzů.
Panda3D SDK poskytuje univerzální rozhraní pro práci s 3D grafikou, takže se programátor nemusí učit funkce OpenGL a DirectX a používat grafické operace na nízké úrovni. Panda3D používá OpenGL jako své hlavní grafické API díky své multiplatformní povaze . Volitelně můžete použít DirectX (pouze pod Windows ), ale v současné době má DirectX v Panda3D řadu omezení.
Panda3D umožňuje automaticky generovat nejpoužívanější shadery : normální mapu , mapu lesku, mapu záře, mapování tónů, filtr květů, prahové osvětlení, inkoust, mapování stínů , kreslený inkoust, objemový blesk, rozostření/zaostření, okolní okluzi . Je možné zahrnout vlastní shadery napsané v Cg nebo GLSL . Motor používá tři typy 3D modelů:
První dva typy jsou vytvořeny v nějakém balíčku pro 3D modelování a poté exportovány nebo převedeny do formátu srozumitelného pro engine. Třetí je dynamicky postaven na základě černobílého obrázku výškové mapy.
Zpočátku byl fyzikální engine ODE integrován do Panda3D . Od verze 1.8.0 byla provedena experimentální integrace PhysX a Bullet Physics Library . Pokud navíc není potřeba používat plnohodnotný fyzikální engine, existují vestavěné nástroje pro detekci kolizí.
Panda3D má dva stavební systémy GUI : vestavěný, založený na použití 3D modelů jako grafického rozhraní, a ve verzi 1.8.0 byla zahrnuta knihovna GUI libRocket.
Engine má funkce pro přehrávání prostorového zvuku.
Panda3D má vestavěný herní systém založený na LAN a serveru. Vývojáři však nejčastěji používají síťové knihovny Pythonu.
Herní motory | |||||||
---|---|---|---|---|---|---|---|
Grafický | Volný, uvolnit GLScene Horde3D Irrlicht OGRE OpenSceneGraph Proprietární Outerra | ||||||
Fyzický | Volný, uvolnit Box2D Kulka Chipmunk newton ÓDA. Tokamak Proprietární DMM Havok fyzika PhysX | ||||||
obecný účel |
| ||||||
Specializované |
| ||||||
Seznam herních enginů |