WikiSpace:Wish List

From Croquet Consortium

Jump to: navigation, search

Contents

A Basic Application

We need a basic Croquet application that can be used as the starting point for developing customized applications. In addition to the features already in the 1.0 release of the SDK, this application should have the following capabilities:

  • Connect to other such applications via some form of a rendezvous service
  • Drag and drop content from the desktop to the application space (including 3D files)
  • Call up a full featured browser in the world (such as Firefox)
  • Save world
  • Export content created within the world
  • A user interface to support development of virtual worlds by end users


Physics Engine Package

One approach would be to code up a physics engine in the Slang subset of Squeak in order to build a fast compiled plugin package that is maintained in a platform-independent way with complete control over the result. A couple of nice online references are Thomas Jakobsen's "Advanced Character Physics" and Chris Hecker's "Rigid Body Dynamics". Another approach might be to interface to something like Bullet or Newton.

Integration of Brie with Croquet 1.0

Bring the Brie stuff into 1.0.

Importing Videoconferencing Capabilities

Bring in the videoconferencing capabilities as implemented by UW in the Jasmine release.

Procedural Texturing

See Procedural Texturing

Security

If information or services of value are to be exchanged in Croquet space, a security infrastructure must be incorporated into this multi-user peer-to-peer environment. We need to more completely define security-related aspects of this project. We are seeking to leverage existing and emerging IT infrastructures while actively exploring the applicability of SSL, Shibboleth, SAML and federated identity concepts to our work with Croquet.

Continuing the Work with Signet

The Croquet team at the University of Wisconsin had been invited to join the Internet2 MACE Signet Early Adopter program (see http://middleware.internet2.edu/signet/ ). Signet is a tool for managing fine-grained authorization and role information. The Signet Working Group is led by Lynn McRae at Stanford University and seeks to explore a privilege management system from Internet2 MACE Signet. Their approach seems well suited to a P2P world, and there is software available.

This invitation brought the Croquet team at UW-Madison and Signet development teams into a collaboration centered around privilege management in a VO (that's "Virtual Organization" in the sense of the term popularized by the Grid community) featuring a peer-to-peer interactive environment. Signet appears well suited to managing fine grained permissions on objects in a distributed environment. Involvement between Signet and Croquet Project efforts would highlight new areas of work for Signet because of its decentralized, peer-to-peer model and its unique provisioning challenge--how privilege information infrastructure can be extended to help manage users' access to objects and their services in Croquet space.

The collaboration intended to explore mapping Signet privilege delegation trees and lattices to a Croquet-based peer-to-peer community. Imagine a collaborative educational effort that brought the subspaces of several participating developers at multiple institutions into a single Croquet world - a type of virtual organization (VO). Signet would have to treat each developer in the VO as a root authority for permissions on objects they create, leading to an array of relatively small and short privilege trees when compared to a privilege management systems that covered financial, organizational and academic hierarchies across a single large research university. In addition, there is a limit to scale when permissions have to be granted to individuals one by one. As the VO grows, the authors of services and resources will eventually find it necessary to develop a shared VO-wide vocabulary of roles and rules in order to keep privilege granting manageable. The Signet team recognizes this as an area for future work. The Croquet project still needs to more meaningfully engage with this effort and provide a driver for continued Signet efforts.

Julian 16:52, 20 September 2006 (EDT)

3D Model Importers

Also see Developer FAQs - What are some external 3D content creation tools? and Content_Resources.

THeightMapTerrain class

  • Height maps are common in geography

TSphericalHeightMapTerrain

  • Take advantage of Mars, Venus, & Earth height maps available

WAN Capable World Registry

Suggested approaches:

  • Globally Known and Available Croquet Island
    • Needs stable host and well known DNS name
    • Somewhat easy
  • Jabber
    • Needs a stable Jabber account/ID
    • Too Client/Servier-ish?
    • Jabber already in Croquet
  • Policies
    • Time out a registry entry if not renewed in a day
    • Mark a registry entry possibly dead if not renewed every 1/2 day
  • Configuration and Firewall transition software
  • Simple Traversal Underneath Network Address Translators (STUN)
  • Universal Plug & Play (UPnP)
    • Simple Service Discovery Protocol (SSDP)
    • Internet Gateway Device Protocol (IGD)
  • SOCKS en.wikipedia.org/wiki/SOCKS
  • Others?

Documentation

  • Tweak/Croquet Interaction
  • Programming with OpenGL and Croquet (see OpenGL in Croquet)

TNightSky & TDaySky

  • TSkyBox is somewhat crude
  • Far enough so doesn't distort when avatar moves
  • Reasonably accurate view for a given time of day & latitude & longitude
  • Rotating point cloud for starts & planets
  • Rotating shell of textures
  • Quake, Doom, Halo pseudo sky

TBillboardRotateAroundYAxis

  • Billboard always faces avatar, as uniquely seen by each avatar, only rotates on Y axis

Avatar controllers

  • Look at games for ideas - Descent, Doom, Quake, Halo
  • Allow simultaneous dual joysticks to simulate 6 axis movement
  • Maybe leverage something like http://www.squeaksource.com/HID

Better Gravity

  • Current method is computationally expensive
  • Eliminating gives a 30% return on CPU time

TSelectiveView

  • TFrame that will change the visibility of its children depending on user specified conditions

Scripting system

  • Game specific ala "move block a pointer 2 units up"
  • Natural Language-ish - command line like
  • Quoth/Ooncha (www.netjam.org/projects/quoth/ netjam.org/quoth/demo )
  • Verb-Noun or Verb-Phrase-Noun-Phrase parser
  • Adventure style: Look block3
  • Zork style" look at the block
  • Build the object model and standard functions so the complexity of interacting with a Croquet island from the outside is minimized.
  • E-toys (?)

3D Shared Croquet Wiki

  • Theory to explore

3D Shared Croquet Blog

  • Theory to explore

3D view for Ooncha/Quoth

Immutables in the Islands

  • Can be compressed and cached for faster starts

Help System/Source

  • If the student appears to need help, then appear to give him some." Quote on Professor's door in the UBC Faculty of Commerce, 1988

Mailing list

  • Make links prominent it new visitor

--Darius 23:23, 20 September 2006 (EDT)

Skeletal Animation Example

See Skeletal Animation Example

Views
Personal tools