igx:backends:unity
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| igx:backends:unity [2014/10/08 08:16] – cr-wiki-admin | igx:backends:unity [2024/04/04 08:04] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== IG.GFX Unity-3D (IGX.Unity) SDK ====== | ||
| + | Welcome to IGX.Unity by intelligentgraphics, | ||
| + | |||
| + | ===== Getting Started with IGX.Unity, IGX Classes ===== | ||
| + | |||
| + | === Create an IGX Object === | ||
| + | |||
| + | - Import the Asset IGX.Unity.dll (see below) | ||
| + | - Create an empty // | ||
| + | - Assign Script // | ||
| + | - For object //world//, component // | ||
| + | - Run and see a loading object. Now try to open the doors/ | ||
| + | |||
| + | Note. It is likely that you need to add also the [[https:// | ||
| + | |||
| + | === Add Camera Control === | ||
| + | |||
| + | - Create a //Camera// | ||
| + | - Assign Script // | ||
| + | - Set camera' | ||
| + | |||
| + | === IGX.Unity.DLL === | ||
| + | |||
| + | The DLL is archived in this [[https:// | ||
| + | |||
| + | === IGXC Scene Repository === | ||
| + | |||
| + | This [[http:// | ||
| + | |||
| + | ===== Index of Integration Classes ===== | ||
| + | |||
| + | For any new projects we recommend the use of IGXScene and IGXObject from Section [[igx: | ||
| + | |||
| + | In the following, only selected classes are named. For a complete and more detailed description have a look into the [[https:// | ||
| + | |||
| + | ==== Section Core ==== | ||
| + | |||
| + | This section provides the core classes. | ||
| + | |||
| + | === EBDebug === | ||
| + | |||
| + | EBDebug is the central interface for debugging and logging. You may turn on/off logging globally, and enable logging for a specific context, such as product life cycle. | ||
| + | |||
| + | === EBLayers === | ||
| + | |||
| + | EBLayers defines Unity-3D layers to be used outside the Unity IDE, and also recursive assignment functions. | ||
| + | |||
| + | === EBMaterial === | ||
| + | |||
| + | EBMaterial is an abstract entity that covers multiple kinds of materials. It also contains a global repository for dynamically loaded materials and textures, and provides conversion methods for native material descriptions into a Unity material. | ||
| + | |||
| + | === EBRepresentation === | ||
| + | |||
| + | EBRepresentation is an abstract entity that covers multiple kind of geometric representations. | ||
| + | |||
| + | === EBWebResource === | ||
| + | |||
| + | EBWebResource is a base class implementing load state. | ||
| + | |||
| + | ==== Section Geometry ==== | ||
| + | |||
| + | === EBMeshData === | ||
| + | |||
| + | EBMeshData is an auxiliary class to be used by any native loaders. | ||
| + | |||
| + | === EBMeshRepository === | ||
| + | |||
| + | EBMeshRepository is a global repository managing native Unity-3D mesh arrays. | ||
| + | |||
| + | ==== Section IGX ==== | ||
| + | |||
| + | This section contains the primary support for dealing with IG.GFX. Currently this section is under development and **not** part of the IGX.Unity Standard Edition. | ||
| + | |||
| + | IGX has the following namespaces: | ||
| + | |||
| + | * IGX - The basis namespace | ||
| + | * IGX.Catalog - Simple Catalog with Configuration | ||
| + | * IGX.Core - Core types for the IG.GFX run time | ||
| + | * IGX.Demos - Classes for demo and test purpose | ||
| + | * IGX.Std - Standard interactors | ||
| + | |||
| + | === IGX.Material === | ||
| + | |||
| + | IGX.Material is a representation of the IG.GFX Material. | ||
| + | |||
| + | === IGX.MetaInformation === | ||
| + | |||
| + | IGX.MetaInformation is a data entity with additional information to be used in the context of IGXObjects. Such information is: | ||
| + | |||
| + | * a bounding box | ||
| + | * a list of attachment and definition points | ||
| + | * material categories and definitions | ||
| + | |||
| + | Note, the spatial properties are defined in IG.GFX space! | ||
| + | |||
| + | === IGX.Object === | ||
| + | |||
| + | IGX.Object extends--as a Unity Component--GameObject with data and behaviour needed in the context of IG.GFX (IGX). | ||
| + | |||
| + | === IGX.ObjectType === | ||
| + | |||
| + | IGX.ObjectType is an enumerator about the type of IGX.Object instances. | ||
| + | |||
| + | === IGX.Scene === | ||
| + | |||
| + | IGX.Scene is a singleton that controls an IG.GFX world. | ||
| + | |||
| + | === IGX.Demo.SampleScene === | ||
| + | |||
| + | IGX.Demo.SampleScene is an extension of IGX.Scene that offers samples. | ||
| + | |||
| + | === IGX.SelectionMode === | ||
| + | |||
| + | IGX.SelectionMode controls the selection behaviour of an IGX.Object. | ||
| + | |||
| + | === IGX.XPoint === | ||
| + | |||
| + | IGX.XPoint defines primarily an attachment point, but is also used to describe object' | ||
| + | |||
| + | === IGX.Core.Interactor === | ||
| + | |||
| + | IGX.Core.Interactor is the abstract base class of all interactor classes. | ||
| + | |||
| + | === IGX.Core.LocalInteractor === | ||
| + | |||
| + | IGX.Core.LocalInteractor is the abstract base class of all local, i.e. object-related interactor classes. | ||
| + | |||
| + | === IGX.Core.GlobalInteractor === | ||
| + | |||
| + | IGX.Core.GlobalInteractor is the abstract base class of all global, i.e. scene-related interactor classes. | ||
| + | |||
| + | ==== Section Import ==== | ||
| + | |||
| + | This section provides a few import classes. | ||
| + | |||
| + | === EBEOXImport === | ||
| + | |||
| + | EBEOXImport is a class for loading an EOX-GFX representation of a 3D object. The class itself is just a reader that uses other classes such as EBEOXScene and EBPartMeshData. Anyway, this class is your entry point of you want to load an EOX. | ||
| + | |||
| + | After successful loading two messages will be sent to the MonoBehaviour that invoked the loading: | ||
| + | |||
| + | * OnLoadingDone() - is an optional message after loading has been done | ||
| + | |||
| + | There are further callbacks, invoked on ancestors of the loaded object, which should **not** be used: | ||
| + | |||
| + | * NoLongerBusy() - is an optional message telling the behaviour that it's not busy any longer | ||
| + | * SelectRescan() - is a required message that should select the object and perform a rescan | ||
| + | |||
| + | === EBEOXScene === | ||
| + | |||
| + | EBEOXScene is an 1:1 representation of a 3D object described by a master XML (in format EOX-GFX) that links to low-level entities such as OBJs and MLIs. | ||
| + | |||
| + | Note. The class name is **eoxScene**. | ||
| + | |||
| + | === EBLoader === | ||
| + | |||
| + | EBLoader is an asynchronous loader for IGXC files, using IGXCImport, and EOX files, using EBEOXImport. | ||
| + | |||
| + | === EBObjectImport === | ||
| + | |||
| + | EBObjectImport is an abstract class for object-level importers such as IGXCImport and EBEOXImport. | ||
| + | |||
| + | === EBOBJImport === | ||
| + | |||
| + | EBOBJImport is a loader for OBJ files. This class is used in the context of the EOX loaders. | ||
| + | |||
| + | === EBOBJImport2 === | ||
| + | |||
| + | EBOBJImport2 is also a loader for OBJ files. This class can be used for stand-alone loading of OBJs. | ||
| + | |||
| + | === IGXCImport === | ||
| + | |||
| + | IGXCImport is a class for loading an IGXC representation of a 3D object. The class itself is just a reader that uses other classes such as EBOBJImport and EBPartMeshData. | ||
| + | |||
| + | === IGXCMetaImport === | ||
| + | |||
| + | IGXCMetaImport imports an IG.GFX metafile that defines material categories and materials, client-side packages, etc. An IG.GFX metafile links to an IGXC or EOX-GFX scene file, or describes only material definitions and assignments. | ||
| + | |||
| + | ==== Section Utilities ==== | ||
| + | |||
| + | This section provides a few utilities. | ||
| + | |||
| + | === EBCameraOrbiter === | ||
| + | |||
| + | EBCameraOrbiter is a class for the two-dimensional control of a perspective camera. | ||
| + | |||
| + | === EBUnusuableAreas === | ||
| + | |||
| + | EBUnusuableAreas is an auxiliary class that represents UI regions that should not react to interaction as they display buttons, etc. | ||
| + | |||
| + | === EBUtilities === | ||
| + | |||
| + | EBUtilities provides support functions: | ||
| + | |||
| + | * GetBoundsOfVertices() - computes the minimal bounding volume from a set of vertices | ||
| + | * CreateWireframeCube() - creates a unit cube but as a wireframe | ||
| + | |||
| + | ===== Technical Information ===== | ||
| + | |||
| + | The current Unity-3D reference versions are: 4.6.5 and 5.1.1 | ||
| + | |||
| + | IGX.Unity implements only **subsets** of EOX-GFX, OBJ and MTL. Please contact us to learn about the supported and non-supported features. | ||
| + | |||
| + | There' | ||
| + | |||
| + | //Copyright (C) 2012 - 2015 intelligentgraphics GmbH. All rights reserved.// | ||
