documentation:terrain
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
documentation:terrain [2011/02/27 17:05] – btrix | documentation:terrain [2024/08/26 13:25] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Terrain ====== | ====== Terrain ====== | ||
- | The goal is here to make a realistic looking terrain which requires very little to none interference of an artist. The terrain includes first off all the geometry of the land but I also want to include the placement of the vegetation. | ||
- | Making a realistic terrain we first of all need to start from something basic this is [documentation: | ||
- | The next stap is to smooth it out in several I'm currently working on 2 ways to do this First of all Thermal errosion this is a more general smooth function in which high placedground is being moved to lower places. | + | [[:documentation: |
- | The second type of errosion is [[documentation: | + | |
- | The vegetation system isn't started yet but i hope to start it soon. | + | |
+ | [[: | ||
+ | |||
+ | |||
+ | Polygonal generation! | ||
+ | |||
+ | |||
+ | [[http:// | ||
+ | |||
+ | |||
+ | found this link with some nice ideas (not much explaining though) | ||
+ | |||
+ | |||
+ | http:// | ||
+ | |||
+ | ===== Client ===== | ||
+ | |||
+ | Structure todo | ||
+ | |||
+ | Note: currently the loading from disk for the terrain resides in Editor\Temp\Terrain\TerrainFullData.cs in the LoadFullData function. | ||
+ | |||
+ | Long term: add dynamic loading (and preprocessed loading) from disk for the heightfields. | ||
+ | |||
+ | Idea: maybe it is possible to buffer heightfields in ram, since the real overhead here is running them in physX? | ||
+ | |||
+ | |||
+ | **BELANGRIJKE KLASSE:** ServerclientOud/ | ||
+ | deze bevat info over de oude physx quadtree | ||
+ | |||
+ | ==== TerrainBlockHeightfieldBuilder ==== | ||
+ | |||
+ | This class Creates a PhysX heightfield (with stilldesign.physx wrapper), from a scene and TerrainFullData for a terrainblock. It returns the actor created. | ||
+ | **Note:** Maybe this class should be static? | ||
+ | |||
+ | ==== TerrainBlockClientPhysics ==== | ||
+ | |||
+ | Handles the Client Physics logic of a terrain block. Creates and destroys the physics actor when required by the client physics. | ||
+ | <color red>< | ||
+ | |||
+ | ==== TerrainClientPhysics ==== | ||
+ | |||
+ | This class represents a terrain and its client physics functionality. One of these represents one terrain, and ensure that physics is enabled correctly in the Client Physics. It creates the TerrainBlockClientPhysics objects, places them in the client physics engine. It is also responsible for supplying dynamic loading methods for the physics. | ||
+ | TODO: Implement the creation of the actor by using a Factory passed by the constructor. This moves the creation/ | ||
+ | |||
+ | ===== Editor - World Editor ===== | ||
+ | |||
+ | **WARNING: this part is probably deprecated** | ||
+ | |||
+ | Todo: | ||
+ | Hier een modes maken waarin de gpu paint op height and weight textures (ipv dat de processor dat doet) Vervolgens gebruikt een andere shader die als input om in de editor te renderen. | ||
+ | De normal map kan ook gemaakt worden met behulp van de gpu. | ||
+ | |||
+ | De uitbreiding aan de World Editor voor het terrain bestaat uit: | ||
+ | ==== TerrainEditorModule ==== | ||
+ | |||
+ | Dit is de application logic voor de Terrain Editor, en zorgt ervoor dat de terrain editor doet wat hij moet doen in The Wizards Editor. | ||
+ | Huidige functies: World Editor terrain tools | ||
+ | |||
+ | ==== TerrainWorldEditorGUI (was: TerrainWorldEditorExtension) ==== | ||
+ | |||
+ | De GUI voor de Terrain Editor functionality in de World Editor. | ||
+ | Plaatst de gui controls in de WorldEditor. | ||
+ | Alle bindings aan de tools zitten in de tools, GEEN REFERENCES NAAR TOOLS. | ||
+ | References: alleen WorldEditor | ||
+ | |||
+ | ==== Tools: (TerrainCreateTool, | ||
+ | |||
+ | Verschillende tools voor de World Editor | ||
+ | References: Verwijzen naar de World Editor?, naar de GUI extension en de TerrainService? | ||
+ | |||
+ | ==== TerrainEditorForm ==== | ||
+ | |||
+ | Dit is het formulier dat de TerrainWorldEditorGUI gebruikt om de DevExpress interface te laden. De effectieve controls zitten hier op | ||
+ | |||
+ | ==== TerrainWorldEditorExtension ==== | ||
+ | |||
+ | Deze klasse wordt gebruikt door de TerrainEditorModule, | ||
+ | De verschillende tools: | ||
+ | ==== TerrainCreateTool ==== | ||
+ | |||
+ | This tools enables the user to click places on where to place a terrain. It uses the TerrainService? | ||
+ | |||
+ | ==== TerrainRaiseTool ==== | ||
+ | |||
+ | <color red> | ||
+ | |||
+ | ==== TerrainPaintTool ==== | ||
+ | |||
+ | TODO | ||
+ | (describe) | ||
- | I just implemented a way of sharpening out the terrain by adding more vertices at the same terrain. | ||
- | \\ | ||
- | {{: | ||
- | {{: | ||
- | {{: | ||
- | \\ | ||
documentation/terrain.1298826312.txt.gz · Last modified: 2024/08/26 13:57 (external edit)