SDSX Requirements
This is the requirements document for the future Scenery Design Suite X (SDSX) tool. For discussions about this tool, please use the SDSX forum.
SECOND DRAFT DESCRIPTION FOR NEW SCENERY DESIGN TOOL
Draft Version 0.2 (Sept 30, 2006)
Working Name
- Scenery Design Studio X [SDSX]
Program License
- Freeware
Developer
- FSDevelopers.com
Introduction
This is a new Scenery Design Tool for use with FSX. It is being developed on a co-operative basis by members of FSDevelopers.com.
It is expected to be a multi phase development and this description covers Phase 1. Future extensions such as adding new scenery elements should be possible via plug-in technology. These would include land class, mesh etc
Objective
To develop a Scenery Design Tool with the ability to:
- read FS9 and FSX XML based scenery BGLs
- enable users to view, modify and create FSX scenery in a graphical environment using drag and drop techniques.
- handle all existing FS9 and FSX XML based objects and effects
- create 'compound objects' such as fence lines, area fills and so on.
- display background images
- display background geographical information (road, rail, coastlines, elevation data etc) either by reading from the Sim or from GIS data Sources.
- compile and deploy FSX scenery bgls.
- provide analysis tools related to scenery
- manage object libraries
- operate in either a stand alone mode or in client/server mode for co-operative working with design teams
- be flexible in design so that new objects, simple or compound can be added without the need to change or re-compile the base program. These should be addable by using plug-in components
- Allow teaking of 3D objects
- Automatically create LoD
- Seasonal texture (can be part of general texture tweaks supporting renaming, adding or removing night maps etc).
- Convert polygons to ground polygons (FS2002 style or FSX ground textures now resolution can be OK)
- Add or remove shadows from parts of an object
Target Audience
- The tool should be usable by a wide range of users from casual to scenery design teams.
- It should also be usuable by AI Traffic Designers.
Target Sim
- FSX
Input Formats
- FS9 and FSX bgl and mdl
- Shape Files
- GIS Data
Output Formats
- The program needs to be able to generate FSX Scenery BGL Files
- It may also generate XML or other format output if required and useful
Data Storage Formats
- To be agreed
User Interface
- In this phase it will provide a 2D top down GUI using the Visual Studio IDE as a model
Scenery objects/elements in toolboxes with drag and drop to the work area objects parameters using property lists. A 3D interface would be expected as part of a later phase
Tools, Design Standards, etc.
Design Philosophy/Patterns
- Microsoft Smart Client Factory based Client
- Separation of GUI from Data using the Model View Presenter (MVP) Pattern
- Observer Pattern for interaction between objects
- Extensions to the program for new/additional scenery object types via plug ins which will require an SDK. It should also be possible to add new compiler/decompiler options via plug-ins
Tools
- IDE – minimum C# Express
- Standards - FXCop
- Documentation - ??
- Testing - ??
Design Platform
- dotNet 2.0 or 3.0
Operating System
- minimum requirements – XP SP2 Home Edition
Primary Design Language
- C# although plug-in modules and self contained parts of the program could be created in any CLR compliant language and compiled to dlls (i.e must be managed)
Display handled by (choice of GDI+, DirectX, OpenGL OR WPF)
Design Standards
- Microsoft Standards as embodied in FXCop - rules to be defined
Components
- managed NET libraries
- avoid using COM based