GithubHelp home page GithubHelp logo

sirikata / kataspace Goto Github PK

View Code? Open in Web Editor NEW
65.0 5.0 16.0 22.37 MB

An interactive, web-based, multi-user, 3D application, based on KataJS and Sirikata.

Shell 2.30% JavaScript 94.69% Python 3.01%

kataspace's Introduction

This is a simple interactive, multi-user, 3D, online application,
based on KataJS and Sirikata.

Easy Deployment
===============
Probably the easiest way to get the application up and running for
testing is to install using the EC2 scripts. Note that these are
really just a scripted version of the full instructions below, so they
will also work on a regular Ubuntu installation and could be easily
adapted to other distributions and platforms. However, many services
run as root (god for monitoring the space server and the web server
for running on port 80), so an isolated environment is encouraged.

(NOTE: The ec2-build.sh script installed default-jre, which currently
 hangs on some micro instances on EC2. If you want to host on a micro
 instance, you might need to run the install portion with an EBS image
 on a larger instance, then move it back to a micro instance.)

To build and deploy, use the ec2 scripts in contrib as follows:
1. Setup a security group that leaves TCP connections for SSH (22),
   Web (80) and Sirikata (7777 by default).
2. Boot up a base image, e.g.
   099720109477/ebs/ubuntu-images/ubuntu-maverick-10.10-i386-server-20101007.1
   using this security group.
3. Copy the ec2 scripts onto the server:
    local> scp -i me.pem contrib/ec2-build.sh contrib/ec2-run.sh ec2-x-y-z-w.compute.amazonaws.com
4. SSH into the server
    local> ssh -i me.pem [email protected]
5. Run the build script. This installs system dependencies (will ask
   for sudo password), checkout out both source trees, compile the
   space server and grab some extra dependencies for KataJS/Kataspace.
    remote> ./ec2-build.sh
   Note that unless you update any
   source code, you should only need to perform this step once.
6. Customize your deployment. Mainly this will be in
   scripts/deployment.js for a simple deployment. By default, SpaceURL
   will automatically be set to the same server using the default port
   for Sirikata of 7777, e.g. if you access
    http://ec2-x-y-z-w.compute.amazonaws.com/path/to/index.html
   it will be converted to
    SpaceURL = "sirikata://ec2-x-y-z-w.compute.amazonaws.com:7777
   In a customized deployment you will need to adjust this (e.g. to
   use a different port). Also feel free to modify other settings in
   this file, for example to add your own avatars.
6. Run the servers.
    remote> ./ec2-run.sh
   This starts the God, which in turn starts the Sirikata space
   server. It also starts lighttpd on port 80, serving files directly
   from the Kataspace directory. God is started last to facilitate
   debugging of the config script. Run with --debug to run god
   interactively so you can see the output and catch any errors that
   may need to be fixed.
7. Connect to the server. Visit
   http://ec2-x-y-z-w.compute.amazonaws.com/ to start using the
   space.

Full Instructions
=================
The following gives the full instructions for compiling the space
server, running it, and running the application, based on KataJS, from
on a web server.

Server
------
To interact with other users we connect to a Sirikata space server.
See http://sirikata.com for details.  If you want to set up a server
to connect to, download the code for Sirikata and build the space
server. Using the minimal set of dependencies is sufficient because
only the server component is used -- KataJS provides the client-side
code for connecting to a Sirikata space.

Once you have the code, simply run the space server
(sirikata/build/cmake/space, append _d for the debug version). The
appropriate ports are hard-coded into the application to work with the
defaults.  If you need to use different ports, or want to point to a
server other than localhost, make the appropriate changes in index.html.

To "protect" against crashes, you can use monitoring software to
ensure the server is restored in case of a crash. The EC2 scripts use
God (http://god.rubyforge.org/), and the Sirikata code has a sample
God script (under tools/space/space.god.rb).

Client
------
The code in this repository, along with KataJS, included as an
submodule, is a full client for Sirikata-based worlds. Because we rely
on KataJS, which in turn relies on other libraries, there's quite a
bit of initialization.  This should all be wrapped up nicely in the
Makefile, so simply typing

make

in this directory should make sure all the libraries are up to date
and built. This application must then be served by a web server.  A
convenient way to do that is to run

./externals/katajs/contrib/lighttpd.py

from this directory, which uses lighttp to serve this directory from
localhost:8888.  To view the application, enter

http://localhost:8888/

into your browser.


Acknowledgements
================
Avatar modeling, texture and animation by:
Stein Lotveit - [email protected]
Creative Commons Attribution License: http://creativecommons.org/licenses/by/3.0/

kataspace's People

Contributors

danielrh avatar danx0r avatar ewencp avatar pathorn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

kataspace's Issues

told I need webgl

chrome 8.0.552.215 Windows 7, works fine with Ourbricks; rejected by kataspace

Can't see any animated characters

Hi,

I'm using Chrome 9.0.587 dev on Windows with latest nvidia drivers and can't see characters. I can move around in the surroundings but I could not see my nor Henriks Character. I've grabbed a Screenshot:
http://dl.dropbox.com/u/3473245/kataspace.jpg

I'm not a web developer, so you'll have to point me in the right direction to look for error reports or something :)

Avatars pop in and out quickly when proximity results are updated

We should have at least a little bit of latency between when we receive a message to invalidate a presence and when we actually do it so that quick removal/addition sequences don't interrupt the user or propagate up to the script. This may be a KataJS issue, or might be a Kataspace one.

Avatar names only appear from the back

I think we have the wrong face culling for text labels: it should be backface not frontface...right now you can only read the users name backwards from the back...

should be a simple fix to GLGE or else to katajs's use of the text canvas

Tab notify

I have kept KataSpace open in a tab for a good while now. It would be very helpful if I could get a visual notification when someone says something in the chat. Like Gmail's chat for instance does.

(Left)

I see way more (Entered) than (Left)

High keyboard repeat causes lag

if you move and your keyboard repeat is set to 255 per second, it really lags the client.
this is remedied by disabling keyboard repeat before playing, but that's a rather painful task--so we should have better repeat detection

Throttle the app when its tab in not active

We know that the application is ressource intensive. But it would be great if something could be done to decrease the amount of ressources it takes up when its tab is not active.

Ken Russell talked about building this into Chrome at WebGL camp and it may be something that needs doing at the abstraction level of the browser.

when an object joins, loads slowly and user does not move, they are not placed properly

To reproduce quickly, checkout objectcreation branch and connect to sirikata server
move forward at a steady rate
and start clicking the create button as you do so

avatars should start trailing behind you...but about 50% of the time, the first avatar is submerged underground. The avatar simply sends a single position update when it joins, so it's possible that update is lost.

Other people who join the world later will see the avatar in the correct location.

Failed to connect

I tried to explore kataspace, but after trying to login i got the following error message:
Couldn't connect: Couldn't connect to space server.

Did i Miss something somewhere?

License?

Under what license is it available? I mean which opensource license for the code?

Login Screen OK, but no chat/world

Currently running on Ubuntu 10.04.

Ran build script, configured using the default options, then the run script. No errors reported at any point other than typical compiler warnings about deprecated headers, etc.

When accessing the server, I receive a login screen that asks for a name, and gives the option to select an avatar. The "Report an Issue" button is also available.

After entering a name, selecting an avatar and clicking login; nothing more happens. I've tested this in both Firefox and Chrome (versions available if needed, but both worked with the reference version of kataspace at http://kataspace.sirikata.com/).

Can't see avatars or labels

On Ubuntu 10.10, running Firefox 4.0 b7 (tarball from Mozilla), when I log into the site, I can see the landscape, but no avatars. Speaking with Henrik inworld, he suggested I file a bug here. Screenshot available upon request.

Avatar names no longer show up above heads

Something happened during the GLGE shadow-enabled upgrade. Code path does not use the new shadows yet, but now text no longer appears above avatar heads.

It would have stopped the merge, but I only noticed the lack of text now. Not quite sure how to proceed there.

Rotation no longer accepted by space with top of tree sirikata

I was just testing top of tree kataspace with top of tree sirikata (7fbd3c25a40ccdc010f2723321167bea4826694f) and when you hit create, make a clone of your avatar then rotate it, the rotation is denied by the server and the object spins back to its original location. Translations and scales seem to stick.

the same kataspace code rotates properly with the older sirikata revision

commit 61386211fda6d92ac885c80f7ef61637f15daace
Author: Patrick Horn [email protected]
Date: Sat Feb 19 00:14:22 2011 -0800

It could well be something to do with a protocol shift, but we should update kataspace to be friendly with sirikata at some point since the old version of sirikata space server had a few outstanding issues that have been fixed in top of tree

Gray screen on mac OS X 10.5.7

Using firefox beta 4.0b7 on mac OS 10.5.7 i can log in and then only see the chat zone and the "report an issue button". Also i can see the title "Kataspace" and the "sit/help" buttons. That's all i can see. The rest is gray.

No landscape nor avatar. Screenshot on demand.

Best regards from France.
@hugobiwan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.