Open Source Platform
for interconnected virtual worlds

NG Design Document/World Editing

From Rex community wiki

Contents

World Editor

Image:Ortho_editor.jpg‎

Picture 1: World editor with 3 orthogonal wireframe views and 1 3D texture & lit view. Reference image from UnrealEd editor

  • Orthogonal views. Using a 4 viewport editor configuration is a very common way to place objects in 3D worlds. Many game editors and 3D modeling tools use it. Using orthogonal views makes placing object very easy, fast and accurate. They remove the need to move your avatar during building to get a good view of the area you are building
  • Views can be moved and zoomed to any location in the world.
  • Selecting an object highlights it in all views.
  • Views can also show normally invisible objects and collision models of objects.
  • Selecting multiple objects can be done with rectangle type selection or by selecting objects one at a time while some key (control for example) is pressed down.

Textures and Material Editor

Materials define how each object’s surface in the world looks like and how they react to lights (see picture 1). Good material support is extremely important for content creators. They define the final look of an object. Typically content creator makes a few basic materials that serve as a base for most of the virtual world’s materials. Our basic library consists of these most used materials that are quick to select and use where needed. Users can also create their own materials by using the material editor. By using the material editor it is possible to create a completely new material or use a premade material and adjust it for your needs.

Image:Material_examples.jpg‎

Picture 1: Materials define the final look of an object

The user can drag and drop a material on an object using a simple material catalogue (see picture 2). Alternatively you can select an object and then a material in the catalogue to apply it on the object. The catalogue has premade materials that where the user can choose a material he needs. User can also create his own materials that appear on the catalogue.

Image:Material_picker.jpg‎

Picture 2: Catalogue of materials

Users can create new materials and surface effects in a material editor. The editor has two modes, a basic mode for novice users and an advanced mode for more content creation oriented users. In basic mode you can create new materials with a simple wizard editor that guides you through the process and divides the process into easy to understand steps. The advanced editor allows you to do more customized materials or edit the existing ones in more detail than in the basic mode.


Each material wizard’s page has four basic elements: help and description texts, material preview window, material parameters and next/previous buttons. Help and description texts guide the user during the creation process and describes the purpose of each step. The preview window gives feedback in real-time to the user. Material parameters change the look of the material that is being created. Parameters can be colors, numerical values or texture images. Next and previous buttons open a new page in the wizard until the material is finished. By pressing the finish button the tool creates the material.

Image:2_MaterialWizard.jpg

Picture 3: Material wizard step 1

Wizard starts by choosing a material type from a predefined shader library. Material type could be for example a reflective glass material, wood, human skin, etc. The user can see the preview of the material type in the preview window. (Picture 3)

Image:3_Color.jpg‎

Picture 4: Material wizard step 2 – choosing a color texture

Next step is to choose a color or a texture image for the material. Color can be chosen by using a simple color picker tool. Texture can be chosen from the default library or uploaded from your own computer. (Picture 4)

Image:4_LightReflection.jpg‎

Picture 5: Material wizard step 3 – Adjusting light reflectance

The next step is optional. It allows you to define how the material reacts with light. This step is very similar to the previous one and has the same tools for choosing colors or textures. The user selects a color or a texture that define how much light the surface reflects on different parts of the object. In addition there is an intensity parameter that affects the overall specular reflection intensity of the material. (Picture 5)

Image:5_Bump.jpg‎

Picture 6: Material wizard step 4 – Material roughness

The final optional step defines how rough or bumpy the material surface is. The user can choose a texture that defines the bump pattern. In addition to texture there is a numerical bump intensity slider for choosing how deep the bumps are.

Once user finishes the material shows up on the material catalogue. From there it can be used for any object in the world.

Particle Editor

Particles are used for variety of special effects such as fire, smoke, snow, birds or rain (see picture 1). Particle effects make a virtual world look alive. Usually creating a particle effect can be a fairly complex process and one particle effect can have dozens of different parameters to adjust. The particle editor has two modes to simplify creating new effects, one for basic users and another for advanced users.

Image:Particle_example.jpg

Picture 1: Three simple particle effects

The basic mode hides most of the parameters for the user and makes it easier to understand for novice virtual world user. The basic version is a simple to use drag and drop tool. You have a catalogue of individual particle emitters that you combine and form new particle effects. For example if you want to create an explosion effect, you’ll add a fireball and a smoke emitter into one and adjust their timing to match each other. To simplify using the basic editor you only have a limited number of parameters to adjust such as effect scale, gravity and timing. The user can also move emitter points if necessary. In the advanced mode the user can create much more complex effects without limitations. In this mode it is possible to adjust individual emitter parameters in very detailed manner. The advanced mode allows users to create completely new emitters or use the ones in the emitter catalogue. These emitters can then be filled with new parameters such as individual emitter life times, particle colors, randomized particle spawn points, etc.

The basic particle editor tool consists of three main parts: preview window, pre-made emitter catalogue and basic parameter settings (see picture 2). In the preview window user can see the particle effect being created in real time. The catalogue is a graphical list of premade particle emitters. Parameter settings allow some of the very basic adjustments for the particle effect that is being created. The user makes new effects by dragging emitters from the catalogue and dropping them then into the preview window where he can see how the effect is going to look in the world. Emitters can be selected by clicking them in the window. Selected emitter can be moved by using pivot point tool or deleted by pressing the ‘delete’ keyboard button. It is often necessary to do some basic adjustments to particle systems to get make them fit into the virtual world. For example the user must be able to easily scale a fire emitter to fit into a fireplace. To make this possible there is a settings box which allows users to quickly scale, change material, change effect’s timing or adjust how the world’s forces affect the particles. Additionally there is a quick link from the basic editor to the advanced editor in case the user is not happy with the end result or wants more control over the effect.

Image:1_ParticleEffect.jpg

Picture 2: Basic particle editor


Name

Sound Editor

Use Cases
  • Change the sound effects attached to an object
Summary Sound effects are a critical part of maintaining ambience. We can attach both streamed and looped samples to an object, and indicate whether they are
  • Continuous Play: begins playing as soon as the attached object is downloaded
  • User-controlled Play: operated by a player interface by the User directly
  • Event-based Play: in direct response to outside events, such as being touched

We can also attach a set of pre-loaded effects to the sample

  • 3D/Spatial Properties
  • Reverb
  • Echo

We can also fake sound-proof rooms by setting an audio source as being only "Line of Sight"; that is if you can't see it you can't hear it.

Flow
  1. Designer selects an object to attach sound sample to.
  2. Designer indicates asset location, through URI.
  3. Designer indicates whether it should be
    • Looped
    • Play Mode: Continuous, User-controller, Event-based
    • Effects: 3D, Reverb, Echo, Line of Sight
Notes