Tools
From NeoWiki
This page gives a quick introduction of the tools and content pipeline. For deeper understanding of each tool and details of the implementations, use the appropriate pages linked below.
Table of contents |
Tools overview
The tool chian aims to provide a complete integrated set of tools for the game asset pipeline. It consists of a number of small collaborative tools each designed to provide one part of the pipeline, as plugins to 3D modeling tools, conversion tools for popular file formats, a scene editor, a font editor and a GUI editor.
Projects
The tools use "projects" to maintain information about the tools, tools settings and data filesystem information. A project file always have information about two major paths:
- Tools binary paths. This tells the tools where to find the binaries for all the other tools so these tools can be launched and utilized to perform their respective tasks.
- Data path. This tells the tools where the game assets are located. For more information about the engine filesystem, see file system layout.
These paths are usually relative to the project file to allow the project file to be used by multiple developers regardless of where on the underlying OS filesystem the project is put. For an example project file, see the default.neoproj in the engine distribution.
The first time you launch any of the engine tools you need to load a project to work with. Once you have done this the tools will remember the last opened project and automatically load this on startup the next time any of the tools are used.
File paths
By using a root path for the data assets and utilizing the engine filesystem in all the tools the problem with migrating resources between development systems is no longer an issue. One developer might setup the system to store the project in C:\some\path\project and some other in D:\other\directory, but since the project file is stored in the project root and defines the data root path as a relative path data, all tools can refer to file as inside this virtual file system regardless of where it actually resides on the harddrive. Naturally no changes needs to be made when running the game either, since it will be setup to use the same data subdirectory as the VFS root path. File names and paths are unified across the whole development process!
Network collaboration
All tools communicate using network sockets sharing project and content data. The goal is a true collaborative development environment where multiple developers and artists can work on the game content over a network. This is planned for post-1.0 engine development.

