Přehled herních knihoven
Z CHWiki
| Na této stránce najdete různé knihovny, které se dají využít při programování her. |
Obsah |
[editovat] Základní grafická API
Informace o tom, co to vlastně je, najdete na Grafické API.
[editovat] C a C++
- DirectX
- Domovská stránka je http://msdn.microsoft.com/directx/. Zde najdete různé články o DirectX, ale předvším SDK, které obsahuje hlavičkové soubory a knihovny a dále příklady a dokumentaci.
- OpenGL
- Hlavičkové soubory a knihovny jsou dodávány s operačním systémem (Platform SDK pro Windows, typicky součástí Visual Studia).
Obsáhlé, ale trochu zastaralé, tutorialy najdete na http://nehe.ceske-hry.cz.
- SDL
- SDL je multiplatformní knihovna, která obstarává správu okna a inicializaci OpenGL, vstup z klávesnice, myši nebo joysticku. Rozšiřující knihovny poskytují další funkce jako načítání různých formátů obrázků, práci s fonty, přehrávání hudby a zvuků a další. Domovská stránka je http://www.libsdl.org
- WinAPI
- Ačkoliv WinAPI není zrovna nejrychlejší grafické API, pro jednodušší 2D hry může bohatě stačit. Navíc taková hra se dá snadněji provozovat na přenosných zařízeních s Windows Mobile.
[editovat] .NET
Pokud programujete v některém z .NET jazyků, musíte použít některou z knihoven, které zpřístupňují příslušné grafické API. Na výběr máte z těchto:
- Managed DirectX
- Oficiální knihovna od Microsoftu. V současné době se Microsoft soustředí na XNA a Managed DirectX už není podporováno.
- XNA
- Knihovna pro určená pro amatérské vývojáře. Program napsaný pod XNA běží jako na Windows, tak na Xboxu 360. Domovská stránka je http://msdn.microsoft.com/xna
- SlimDX
- Open source knihovna, které zpřístupňuje DirectX vývojářům v .NET. Nahrazuje Managed DirectX a poskytuje nové funkce. Domovská stránka je http://slimdx.mdxinfo.com/
- Tao Framework
- Open source knihovna, která dovoluje použít OpenGL v .NET projektech. Mimo to zpřístupňuje i další knihovny pro zvukový výstup, skriptovací jazyk Lua, fyzikální engine ODE a další.
[editovat] Java
V Javě je situace skoro stejná jako v .NETu.
- Java2D
- Knihovna od Sunu pro 2D grafiku s mnoha funkcemi. http://java.sun.com/products/java-media/2D/
- Java3D
- Knihovna od Sunu pro 3D grafiku. Vysokoúrovňová knihovna, pracuje se na úrovni objektů. http://java.sun.com/javase/technologies/desktop/java3d/
- jogl
- Knihovna umožňující použít OpenGL v Javě. https://jogl.dev.java.net/
- LWJGL
- Další knihovna pro použití OpenGL v Javě. http://lwjgl.org/
- JavaFX
- Prostředí pro 2D grafiku na způsob Flashe http://javafx.com
[editovat] Python
- PyGame
- Tato knihovna zpřístupňuje knihovnu SDL. S její pomocí lze psát 2D hry v Pythonu. http://www.pygame.org
- PyOpenGL
- Podobně pro OpenGL. http://pyopengl.sf.net
[editovat] Grafická uživatelská rozhraní
Grafické uživatelské rozhraní operačního systému většinou ve hrách moc dobře použít nejde a proto existují GUI systémy implementované pomocí OpenGL nebo DirectX.
[editovat] Java
[editovat] C/C++
- http://www.cegui.org.uk/ - CeGUI
- http://code.google.com/p/turska/ - Turska
- http://glam.sourceforge.net/ - GLAM
- http://libufo.sourceforge.net/ - LibUFO
[editovat] Fyzikální engine
[editovat] C/C++
- Havok je známý fyzikální engine používaný v mnoha komerčních hrách. Nyní je k dispozici zdarma pro freeware vývojáře.
- PhysX původně vyvíjený firmou Ageia, nyní ve vlastnictví nvidie. Rovněž zdarma.
- ODE open source fyzikální engine.
- Newton dynamics je free knihovna napsaná v jazyce C, ve vývoji je verze 2, která má využívat k výpočtu grafické akcelerátory.
[editovat] .NET
- http://sourceforge.net/projects/xnahavok - wrapper Havoku pro .NET
[editovat] Ostatní
[editovat] Java
- http://www.stud.fit.vutbr.cz/~xbekiv00/?page=6#aeon_engine 2D engine pro snadné programování her bez znalosti OpenGL, zdrojové soubory, demo, tutoriál ...
[editovat] C/C++
- http://opensteer.sourceforge.net/ knihovna pro pohyb objektů (např. stíhačky).
Jak se Vám líbí obsah na této stránce? Uvítáme Vaše podněty na Diskuse:Přehled herních knihoven anebo úpravy přímo v textu. Uvítáme především krátké zhodnocení každé knihovny od někoho, kdo s ní má nějakou zkušenost.
