Presentation is loading. Please wait.

Presentation is loading. Please wait.

Auran Jet Engine Keng Shih-Ling

Similar presentations


Presentation on theme: "Auran Jet Engine Keng Shih-Ling"— Presentation transcript:

1 Auran Jet Engine Keng Shih-Ling http://www.auran.com/jet

2 CGGM Lab, CSIE.NCTUKeng Shih-Ling 2 Agenda Overview Jet Systems Jet Extensions Jet Examples Q & A

3 CGGM Lab, CSIE.NCTUKeng Shih-Ling 3 Agenda Overview Jet Systems Jet Extensions Jet Examples Q & A

4 CGGM Lab, CSIE.NCTUKeng Shih-Ling 4 Overview Auran Jet is a development engine that can be used to create a variety of 3D applications including, games, simulation and training software.

5 CGGM Lab, CSIE.NCTUKeng Shih-Ling 5 Overview 3D Application API Hardware 3D Graphics API2D APIInput DeviceOS API 3D Scene Mngmt2D SpriteGamepadNetworkAudio TerrainCollisionCharacterUIDynamicsSound FX Combat SystemFX SystemGame AIScript System NPC SystemVirtual AgentTrading SystemStory Game Game Play Layer Engine Layer System Layer

6 CGGM Lab, CSIE.NCTUKeng Shih-Ling 6 Overview License Fee –RC1Free –Other Commercial Case by case “Run Time”, “Royalty”,”Full Source”,… –V1.0, CommercialUS $30,000 –V1.0, Non-CommercialUS $99 Scale –Over 400,000 lines of code –Over 5,400 documented API symbols

7 CGGM Lab, CSIE.NCTUKeng Shih-Ling 7 Overview:: Architecture Modular and Layered Architecture –Kernel –Core –Foundation –Extensions –Jet Tools –Game Systems –Game Tools

8 CGGM Lab, CSIE.NCTUKeng Shih-Ling 8 Agenda Overview Jet Systems Jet Extensions Jet Examples Q & A

9 CGGM Lab, CSIE.NCTUKeng Shih-Ling 9 Jet Systems Kernel Input Interface Network Render Sound Artificial Intelligence WAVE (Wide Area Virtual Environment) JIVE (Jet Integrated Visual Environment)

10 CGGM Lab, CSIE.NCTUKeng Shih-Ling 10 Systems:: WAVE WAVE (Jet Integrated Virtual Environment)

11 CGGM Lab, CSIE.NCTUKeng Shih-Ling 11 Systems:: JIVE JIVE (Wide Area Virtual Environment)

12 CGGM Lab, CSIE.NCTUKeng Shih-Ling 12 Jet Systems Kernel Input Interface Network Render Sound Artificial Intelligence WAVE (Wide Area Virtual Environment) JIVE (Jet Integrated Visual Environment)

13 CGGM Lab, CSIE.NCTUKeng Shih-Ling 13 System:: Kernel The Jet Kernel is the hub of all other Jet systems and provides support for some of Jet ’s key features such as: –OS abstraction Win32 (Linux) –Low-level services Language extensions Memory management Multi-threading support Debugging facilities

14 CGGM Lab, CSIE.NCTUKeng Shih-Ling 14 System:: Kernel Major Systems: –Jet Task Management System –Jet Resource System –Jet Plug-in System

15 CGGM Lab, CSIE.NCTUKeng Shih-Ling 15 System::Kernel:: Task Jet Task Management System –Tasks provide Jet 's main frame-level update mechanism. Each task is called once-per- frame and may be suspended or resumed individually. –The Task Manager is responsible for initializing, updating, and uninitializing tasks. Tasks are added to the Task Manager and stored in a prioritized list in order from highest priority at the top of the list to lowest at the bottom.

16 CGGM Lab, CSIE.NCTUKeng Shih-Ling 16 System::Kernel:: Task Jet system tasks and their priority Jet System TaskPriority Input observer system2.0 Interface system3.0 Path search system4.0 Resource system5.0 Network system6.0 Sound system7.0 Render system8.0

17 CGGM Lab, CSIE.NCTUKeng Shih-Ling 17 System::Kernel:: Task Main thread

18 CGGM Lab, CSIE.NCTUKeng Shih-Ling 18 System::Kernel:: Task Jet is a multi-threads system –The main thread –The network thread –The sound streaming thread –The resource streaming thread

19 CGGM Lab, CSIE.NCTUKeng Shih-Ling 19 System::Kernel:: Resource Jet Resource Management System –Resource Databases A tree-like structure –Resource & Resource types Each resource type is handled by a specific resource plug-in (*.bmp, *.jpg, *.pm, *.im, *.kin, *.mp3, …) –Resource aliases (*.bmp.alias, *.pm.alias, *.mp3.alias, …)

20 CGGM Lab, CSIE.NCTUKeng Shih-Ling 20 System::Kernel:: Resource Jet Resource Management System –Asynchronous background loading Use multi-threading abilities Allows the application to continue its execution while resources are being loaded. –Resource priority Load critical resources ahead of less critical ones.

21 CGGM Lab, CSIE.NCTUKeng Shih-Ling 21 System::Kernel:: Plug-in Jet Plug-in Management System – Jet 's Plug-in Management System allows programmers to add, replace and/or extend engine features and systems –Winamp –3dsMax

22 CGGM Lab, CSIE.NCTUKeng Shih-Ling 22 System::Kernel:: Plug-in Jet Plug-in Management System –Encapsulated user interface components –Different resource loading schemes –Hardware and third-party API device drivers –JIVE plug-in tools and applications

23 CGGM Lab, CSIE.NCTUKeng Shih-Ling 23 Jet Systems Kernel Input Interface Network Render Sound Artificial Intelligence WAVE (Wide Area Virtual Environment) JIVE (Jet Integrated Visual Environment)

24 CGGM Lab, CSIE.NCTUKeng Shih-Ling 24 System:: Render Render system DLL Hierarchy

25 CGGM Lab, CSIE.NCTUKeng Shih-Ling 25 System:: Render DLLs and sample functionality DLLExample function RenderSystemHardware abstraction, Frame-level update, Texture, geometry caching, Material Render3DCore3D obj hierarchies, cameras, light, 2D/3D primitive Render3DFoundationProgressive LOD, mesh geometry, Skin deformation, Key-frame animation Render3DextensionParticle effects Render2DCoreSprite

26 CGGM Lab, CSIE.NCTUKeng Shih-Ling 26 System:: Render Rendering Pipeline

27 CGGM Lab, CSIE.NCTUKeng Shih-Ling 27 System:: Render Kernel Graphics API Abstraction Rendering Optimization Support Layers Scene Support Modifiers Animation Support Progressive LOD Support Mesh Support Sprite support Particle Effects System Texture And Material Support

28 CGGM Lab, CSIE.NCTUKeng Shih-Ling 28 System::Render:: Kernel Kernel –RenderKernel The RenderKernel initializes and provides an interface to the Render system ( SceneGraph, MaterialManager, TextureManager…) –SystemResourceViewer SystemResourceViewer allows derived classes to receive a Layer visible list before each frame is rendered

29 CGGM Lab, CSIE.NCTUKeng Shih-Ling 29 System::Render:: API Graphics API Abstraction –Vertex Formats PackedVertex{P,N,C,W,T,TT} –GeometryChunk a base class describing geometry grouped for efficient rendering.

30 CGGM Lab, CSIE.NCTUKeng Shih-Ling 30 System::Render:: Optimization Rendering Optimization Support –The core of Jet's rendering optimization support are render caches –RenderingCache Alpha, Materials, Shadows, Particle effects –RenderingCacheManager RenderingCache objects receive a priority used by the RenderingCacheManager to control sequencing.

31 CGGM Lab, CSIE.NCTUKeng Shih-Ling 31 System::Render:: Layers Layers –A Layer is a rendering abstraction representing a rectangular screen region, with a separate rendering pass within the current frame –Viewport –Canvas

32 CGGM Lab, CSIE.NCTUKeng Shih-Ling 32 System::Render:: Scene Scene Support –The Jet Render System supports many types of scene abstractions, such as: 3D object hierarchies Lights Shadows 2D/3D primitives (also used for collision checking)

33 CGGM Lab, CSIE.NCTUKeng Shih-Ling 33 System::Render:: Scene Scene Support –SceneGraph –Element and VisibleElement –Particle (for 3D object hierarchy) –Line2D, Cone, Polygon (2D/3D primitives) –Lights –LightTargets –Shadows –ShadowVolume

34 CGGM Lab, CSIE.NCTUKeng Shih-Ling 34 System::Render:: Modifiers Modifiers –Jet provides custom update mechanisms through the Modifier and its associated classes –Modifier –ModifierHost –ModifierList

35 CGGM Lab, CSIE.NCTUKeng Shih-Ling 35 System::Render:: LOD Progressive LOD support –Jet’s progressive level-of-detail (LOD) supports scene-balancing through scalable LOD scene objects and manager. The manager distributes geometry to each scalable object to meet the scene’s target geometry allowance.

36 CGGM Lab, CSIE.NCTUKeng Shih-Ling 36 System::Render:: LOD Progressive LOD support –ScalableDetail –ScalableDetailManager ScalableDetailManager uses the object’s distance from the camera and size to allocate triangles

37 CGGM Lab, CSIE.NCTUKeng Shih-Ling 37 System::Render:: Mesh Mesh Support –Geometry, TriangleGeometry –FaceDescriptor to query a mesh for information regarding a given face –IndexedMeshInstance –ProgressiveMeshInstance

38 CGGM Lab, CSIE.NCTUKeng Shih-Ling 38 System::Render:: Mesh Mesh Support –InfluenceMesh provides skin deformation for Jet mesh objects –MeshObservers allows derived classes to receive mesh related events and define actions on a per-event basis.

39 CGGM Lab, CSIE.NCTUKeng Shih-Ling 39 System::Render:: Animation Animation Support –Skeleton, SkeletonModifier –AnimationModifier –Animator –AnimaitonObserver –AnimationEvent

40 CGGM Lab, CSIE.NCTUKeng Shih-Ling 40 System::Render:: Sprite Sprite Support –SpriteInstance –SpriteManager –SpriteResource

41 CGGM Lab, CSIE.NCTUKeng Shih-Ling 41 System::Render:: Particle Particle Effect System –ParticleFXEmitter Point, Ribbon, Disc, Rect –ParticleFXModifier Color, Field, Swirl

42 CGGM Lab, CSIE.NCTUKeng Shih-Ling 42 System::Render:: Texture & Material Texture & Material Support –Texture –TextureManager The TextureManager controls the creation, activation, and updating of textures used per frame. –Material –MaterialManager

43 CGGM Lab, CSIE.NCTUKeng Shih-Ling 43 Agenda Overview Jet Systems Jet Extensions Jet Examples Q & A

44 CGGM Lab, CSIE.NCTUKeng Shih-Ling 44 Jet Extensions Jet Collision System Extension Jet Movement System Extension

45 CGGM Lab, CSIE.NCTUKeng Shih-Ling 45 Ext:: Collision CollisionArea CollisionBox CollisionBSPNode CollisionBSPTree CollisionManager CollisionObject

46 CGGM Lab, CSIE.NCTUKeng Shih-Ling 46 Ext:: Movement DirectMotion Grid2DPathSearch Grid2DTerrainBase PathMotion PathMotionEventType PathMotionObserver

47 CGGM Lab, CSIE.NCTUKeng Shih-Ling 47 Agenda Overview Jet Systems Jet Extensions Jet Examples Q & A

48 CGGM Lab, CSIE.NCTUKeng Shih-Ling 48 Jet Examples JRally 2101 –A multi-player racing game –Full source code –3 artists –3 programmers –7 weeks

49 CGGM Lab, CSIE.NCTUKeng Shih-Ling 49 Agenda Overview Jet Systems Jet Extensions Jet Examples Q & A

50 CGGM Lab, CSIE.NCTUKeng Shih-Ling 50 Q & A ?


Download ppt "Auran Jet Engine Keng Shih-Ling"

Similar presentations


Ads by Google