Advanced Search
Search Results
157 total results found
Scene List Editor
Now that you have a TSceneList asset, let's edit it. Examine the asset in an inspector and click the button to open the customized editor window and you’ll see something that looks like this: The left column lists all the TScenes in the asset; there are only ...
Relationships: Chunksize, Padding, Selector
This system is flexible, but it is easy to make mistakes. If you have the chunk size set too large and use large values for padding it’s entirely possible that the entire TileFab for the TScene gets loaded all at once; i.e., no chunking. Internally, the TileFa...
At Runtime...
During your Unity scene initialization you can load the first TScene by calling TpChunkedSceneManager. When the OnAfterTSceneChange callback is handled by your custom code you call the UpdateTickAsync method in TpZoneLayout which fills in the initial camera vi...
Layout System Block Diagram
This block diagram illustrates the main parts of the chunking system. The lowest-level APIs are within TileFabLib and ZoneManagerLib. These libraries handle all the tile/prefab loading and unloading as the camera moves around. The next highest-level component...
TSceneList
Each TSceneList asset comprises information about one or more TScenes (Tile Scenes). These are shown in the left column of its editor window. You add or delete TScenes with the + and – buttons under the list. When you select a single TScene the right column sh...
TpZoneLayout
You may have noticed in TSceneList that each TScene can have multiple TSceneSpecs. What’s that for? Each TSceneSpec helps ChunkedSceneManager understand which TileFab is used to add tiles to a particular Tilemap group. A Tilemap Group comprises a Grid with one...
Using Multiple ZoneLayouts
This is a really useful feature. You might have a Tilemap Group comprising a Grid with, say, 8 child Tilemaps and want to use a Chunk Size of 16 and a second Group comprising another Grid with a single Tilemap, but you want a Chunk Size of 64 for this Group be...
Zones and LoadFlags
Zones A Zone is a square area of a Tilemap which is internally represented by a RectInt. The X and Y sizes are the same and are the Chunk Size. So, for Tilemap Groups using a Chunk Size of, say, 16, each Zone is 16 x 16 tiles. Hence, the layout of all the Zone...
Selectors
Selectors are used by the layout system to determine what and how to load. Each Selector has a reference to one or more TileFabs (but usually just one) and a LoadFlags field. There are two types provided with this distribution: SingleFabChunkSelector and Chun...
TSceneInitializer
You use one of the SetScene overloads of ChunkedSceneManager to change TScenes. The very last thing that TpChunkedSceneManager.SetScene does prior to invoking the OnAfterTSceneChange callback is to evaluate all the Initializers for each TSceneSpec in the TScen...
About the Layout Demo
Save Files There are two different types of save files: CdemoSaveFile.txt: contains the GUID of the current TScene (the GUID in the left column of the TSceneList asset’s custom editor window). CdemoSaveFile_guidstring.txt: contains JSON representing the data ...
Using PositionDb Service with Layout
The TilePositionDb is a Scriptable Runtime Service: it’s an optional feature that you can use to keep track of what positions are occupied on one or more Tilemaps. The intent is to make collision detection easier in certain situations; typically, turn-based ga...
Basics
In most cases, the class that you want to subclass is TilePlusBase. But you might want to extend from one of the supplied tiles like TpFlexAnimatedTile. Many TilePlus Tiles’ fields, properties, and methods are marked as ‘virtual’ so they can easily be overridd...
ITilePlus
This is the main interface for TilePlus tiles. Almost all of the interface is implemented in TilePlusBase. When creating new tiles you'd normally be inheriting from TilePlusBase, TpFlexAnimatedTile or TpSlideShow which complete the remaining methods and/or pro...
ITpMessaging
ITpMessaging is used to implement targets for the Messaging Service. It's pretty simple: /// <summary> /// Interface for using TpLib SendMessage methods. /// <...
ITpPersistence
This interface specifies endpoints for save and restore data. It's something optional and a bit low-level. But it's an easy way to save and restore TPT tile's instance data of your choosing. public interface ITpPersistence<out TR, in T> : ITpPersistenceBase ...
Others
These are mostly for internal use. IActionPlugin Used with ZoneActions and EventActions to provide a way to have a second asset (typ, a Scriptable Obj but can be any UnityEngine.Object) be inspectable thru the IMGUI tile editor (selection inspector). Note that...
Layout-Related
ITSceneInitializer Scene Initializers are used as a way to move scene initialization code into Scriptable Object assets, and are discussed here. IChunkSelector Selectors are used by the Layout system to find out what to put where, and are discussed here.
UI Tiles
UiButton This is the simplest UI element, implementing a momentary button. Subclass of TpSlideShow When clicked, the color changes. Hovering isn't supported. It doesn't support SetValue (since it's momentary) nor any effects. Except for ITpUiControl.GetCharVa...
ITpUiControl
public interface ITpUiControl { /// <summary> /// Set c...