Whirld

From Unify Community Wiki
(Difference between revisions)
Jump to: navigation, search
(Current Status)
(Current Status)
Line 14: Line 14:
 
== Current Status ==
 
== Current Status ==
  
* Alpha library release is now available:
+
'''* Unity Whirld library is now available:'''
[http://dat.marsxplr.com.s3.amazonaws.com/whirld/whirld1.zip » Download Unity Whirld Library]
+
[http://dat.marsxplr.com.s3.amazonaws.com/whirld/whirld1.zip » Download Unity Whirld Library 1.0]
  
This is "Alpha quality" software, and comes with no documentation or guarantees that it won't erase your hard drive. DO NOT USE it in any projects that you aren't afraid to loose!
+
This is "Alpha quality" software, and it comes with no documentation - or guarantee that it won't erase your hard drive. DO NOT USE it in any projects that you are afraid to loose!
  
  
 +
After opening the Whirld package in Unity, you will see several new folders in your project:
 +
* The "Whirld" folder contains all the source code for the various Whirld tools
 +
* The "Resources" folder contains a collection of prefabs and other fun things that you want to be available for instantiation in your game
 +
* The "Resource Sources" folder contains the assets that were used to create the resources.
  
* Sample Whirld enabled game is online:
+
 
 +
To take the Whirld library for a spin, click the "Assets > Whirld World Tools" menu to open the Whirld editor panel.
 +
In the panel; enter a world file URL, (optionally) specify a default material for world objects, click "Load World", and a game world will be downloaded off the internet and generated in your scene!
 +
Important: The Whirld library generates it's worlds inside a GameObject in your scene called "World". If there is already a GameObject with this name in the root of your scene, it will be overwritten.
 +
Here are some simple BZW worlds to test in the Whirld panel:
 +
* http://map.marsxplr.com.s3.amazonaws.com/BoxyCastles.bzw
 +
* http://map.marsxplr.com.s3.amazonaws.com/BattleZone.bzw
 +
* http://map.marsxplr.com.s3.amazonaws.com/TwinPeaks.bzw
 +
 
 +
If you are feeling really adventurous you can also try loading worlds through scripting, which is accomplished with the following JavaScript code:
 +
<javascript>var whirld : Whirld;
 +
whirld = new Whirld();
 +
StartCoroutine(whirld.LoadWorld(WorldURL, WorldFormat));</javascript>
 +
 
 +
 
 +
 
 +
'''* Sample Whirld enabled game is online:'''
 
[http://marsxplr.com/view-4815 » Play Mars Explorer 1.99]
 
[http://marsxplr.com/view-4815 » Play Mars Explorer 1.99]
  

Revision as of 23:48, 6 August 2009

The Whirld project aims to create a simple, elegant, standardized world format - complete with supporting libraries - for utilization by Unity games. Whirld worlds are a somewhat similar concept to asset bundles - but being an open format, they will not need to be created using the Unity editor - allowing them to be vastly more useful in a variety of scenarios.


Contents

Vision

  • Being an (unofficial) community standard, this project will dramatically increase the value of existing and future Unity games by providing them with a near infinite variety of ready made Whirld compatible worlds created by various game communities.
  • Being open and free, this project will inspire innovation in the next generation of developers: the ones who are currently playing games. What better way to interest creative minds in game development than by providing them with a free toolset to create their own worlds for their favorite Unity games?
  • Being simple and easy to use, this project will encourage the development of Unity games. Imagine the excitement of dropping a library into your Unity project, and instantly having access to a huge variety of ready made worlds!


Current Status

* Unity Whirld library is now available: » Download Unity Whirld Library 1.0

This is "Alpha quality" software, and it comes with no documentation - or guarantee that it won't erase your hard drive. DO NOT USE it in any projects that you are afraid to loose!


After opening the Whirld package in Unity, you will see several new folders in your project:

  • The "Whirld" folder contains all the source code for the various Whirld tools
  • The "Resources" folder contains a collection of prefabs and other fun things that you want to be available for instantiation in your game
  • The "Resource Sources" folder contains the assets that were used to create the resources.


To take the Whirld library for a spin, click the "Assets > Whirld World Tools" menu to open the Whirld editor panel. In the panel; enter a world file URL, (optionally) specify a default material for world objects, click "Load World", and a game world will be downloaded off the internet and generated in your scene! Important: The Whirld library generates it's worlds inside a GameObject in your scene called "World". If there is already a GameObject with this name in the root of your scene, it will be overwritten. Here are some simple BZW worlds to test in the Whirld panel:

If you are feeling really adventurous you can also try loading worlds through scripting, which is accomplished with the following JavaScript code: <javascript>var whirld : Whirld; whirld = new Whirld(); StartCoroutine(whirld.LoadWorld(WorldURL, WorldFormat));</javascript>


* Sample Whirld enabled game is online: » Play Mars Explorer 1.99

Development Phases

  1. Define the world format: This phase involves researching existing game world definition formats, and combining the best practices of each into a simple, flexible, cohesive standard to be utilized by many different types of Unity games.
  2. Create the library to load worlds: This library will be included in published games, and will be able to generate primitive shapes, meshes, terrain objects, game specific prefabs, etc in a scene from the data contained in a world file.
  3. Create a system to export Unity scenes as worlds: The inverse of phase 2, this system will be an editor script to export a Unity scene to a world file.
  4. Create systems to build worlds outside the Unity editor: Plugins for popular modeling applications such as Blender, or even a complete world design application written in Unity are all within the realm of possibility! This phase is where the communities of Unity games transition from passive consumers to budding creative developers - increasing the value of Unity games, and at the same time enriching their own lives.


Resources

Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox