Opengl 4.3 jmonkey update#
Update game state, using: Collision Detection, Game AI, Physics, etc Initialization: Load assets Load levels …
Opengl 4.3 jmonkey portable#
OpenGL is portable across platforms DirectX is only for Windows.OpenGL is aimed at 3D graphics only DirectX is a more complete game development API.Only for Windows, currently at version 11.1 ĭirect Graphics – 2D and 3D graphics DirectInput – interface to input devices DirectAudio – play sound and music DirectPlay – communication across networks DirectShow – multimedia support.DirectX is a Microsoft API providing direct access to hardware.games, modeling, scientific visualization, etc.Several hundred functions, with many language bindings.A hardware-independent API, implemented on many different platforms.Almost every game engine utilizes either OpenGL or DirectX for its graphics processing and rendering.Java binding to the Bullet physics library o a collision detection and rigid body dynamics library Ĭollisions, gravity, forces mesh-accurate collision shapes rigid body dynamics for vehicles and characters physical joints and hinges Blender integration Ragdoll physics Multi-threaded physics.increased contrast for greater detail o ambient occlusion (blocking) o depth of field blur o etc.Post processing / filter effects o reflective water, light scattering, fog o shadow mapping o High Dynamic Range (HDR) rendering.Particles o smoke, fire, explosions, etc.O makes it easier to determine when objects are colliding and are visible to each other o makes it easier to display a scene with different Levels of Detail (LOD) The scene graph data structure simplifies the creation of a scene by the user, and also: o makes it easier to transform groups of objects.
A scene graph stores all the entities or objects in the scene, and the spatial relationship between them.The game engine will often reuse existing libraries: o GUI (in JMonkeyEngine (JME): Nifty GUI) o Physics (in JME: jBullet, a Java port of the Bullet Physics library) o skeletons (in JME: support for Blender joints) o AI o visual effects( in JME: OpenGL shaders, particle system) o terrain (in JME: the Ogre3D dotScene format) o scene graph (so important, that it's a part of the core in JME).Images / textures audio video shaders 3D models
minimize, maximize, full-screen, resolution o maths (e.g.Elements used in most games: startup and shutdown file IO (loaders, writers, datafile parsers) input controls (keyboard, mouse, touch) window management.These include: o basic 3D graphics theory o 3D graphics programming with the JMonkeyEngine game engine o 3D rendering algorithms underlying 3D game engines o shader programming (maybe).I will focus on the graphics and maths techniques used inside the "Rendering Engine" box.Simple Game Architecture More Detailed Game Architecture Graphics/Rendering Game Programming Objective o to discuss some of the main game architecture elements, rendering, and the game loop.
Animation and Games Development 242-515, Semester 1, 2014-2015