Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Mansoor Sayed authored and Mansoor Sayed committed Mar 12, 2012
2 parents 685a83f + 591bb85 commit 321407a
Show file tree
Hide file tree
Showing 26 changed files with 2,876 additions and 2,551 deletions.
6 changes: 3 additions & 3 deletions .gitmodules
@@ -1,3 +1,3 @@
[submodule "models"] [submodule "models"]
path = models path = models
url = git@github.com:mansoor-s/Galactic-Supremacy-Models.git url = git@github.com:mansoor-s/Galactic-Supremacy-Models.git
1,335 changes: 661 additions & 674 deletions LICENSE

Large diffs are not rendered by default.

80 changes: 40 additions & 40 deletions Readme.md
@@ -1,40 +1,40 @@
# Galactic Supremacy # Galactic Supremacy


Galactic Supremacy is a an open source (MMORTS/Empire) Massive Multiplayer Online - Real Time Stratagy and Empire management game built for the web. Galactic Supremacy is a an open source (MMORTS/Empire) Massive Multiplayer Online - Real Time Stratagy and Empire management game built for the web.






##Technology## ##Technology##


The game is being written entirely with javascript and and makes use the latest web technologies. The game is being written entirely with javascript and and makes use the latest web technologies.


For the front end, **WebGL**(using **Three.js**) is used to deliver 3d hardware accelerated graphics in the browser. For the front end, **WebGL**(using **Three.js**) is used to deliver 3d hardware accelerated graphics in the browser.


The server side is being written on the **Node.js** platform and is backed by MongoDB and Redis. The server side is being written on the **Node.js** platform and is backed by MongoDB and Redis.


Communication between server and client is done via WebSockets for reduced overhead and latency. Communication between server and client is done via WebSockets for reduced overhead and latency.






##Gameplay## ##Gameplay##


Players start out on a single planet, from which they must build infrastructure and a sustainable economy. After which, they must research space technology and start colonizing other planet, moons, astroids and eventually other star systems. This is where millitary conflict comes in. Players start out on a single planet, from which they must build infrastructure and a sustainable economy. After which, they must research space technology and start colonizing other planet, moons, astroids and eventually other star systems. This is where millitary conflict comes in.


Space battles take place in a fully 3D environment, where ships can be moved in X, Y, and Z axes (think Homeworld). This introduces many new factors to take into acount when planning a move. Space battles take place in a fully 3D environment, where ships can be moved in X, Y, and Z axes (think Homeworld). This introduces many new factors to take into acount when planning a move.




##Demo ##Demo
Some very early work in progress demos: Some very early work in progress demos:
Galaxy view Galaxy view
http://mansoorsayed.com/gs2/ http://mansoorsayed.com/gs2/
Starsystem view Starsystem view
http://mansoorsayed.com/gs/ http://mansoorsayed.com/gs/




##TODO: ##TODO:
More documentation More documentation






##Licence## ##Licence##
This project is released under the terms and conditions of the GPL v3 licence. This project is released under the terms and conditions of the (AGPL) GNU AFFERO GENERAL PUBLIC LICENSE.
2 changes: 1 addition & 1 deletion backpack/nice advice.txt
@@ -1,2 +1,2 @@
[19:09] <chandlerp> IvanKuzev: not in a normal way, however I just thought of a way to use multiple textures, and you could use that to set it to a fully transparent texture [19:09] <chandlerp> IvanKuzev: not in a normal way, however I just thought of a way to use multiple textures, and you could use that to set it to a fully transparent texture
[19:10] <chandlerp> if you create a texture sprite, say 4 textures 2x2 you can update each particle's UV to match whichever texture you want [19:10] <chandlerp> if you create a texture sprite, say 4 textures 2x2 you can update each particle's UV to match whichever texture you want
36 changes: 18 additions & 18 deletions backpack/screen to world z.js
@@ -1,19 +1,19 @@
/* /*
<chandlerp> http://jsfiddle.net/AzqkW/ <chandlerp> http://jsfiddle.net/AzqkW/
[17:28] <chandlerp> there you go [17:28] <chandlerp> there you go
[17:29] <chandlerp> where origin is camera.position, vector comes from the call to projector.unproject() [17:29] <chandlerp> where origin is camera.position, vector comes from the call to projector.unproject()
[17:29] <chandlerp> and z_plane_point is where you want to intersect the Z plane at [17:29] <chandlerp> and z_plane_point is where you want to intersect the Z plane at
[17:33] <IvanKuzev> thank you [17:33] <IvanKuzev> thank you
*/ */


function getWorldXYZ(camera,xyPosition,z){ function getWorldXYZ(camera,xyPosition,z){
var origin = camera.position; var origin = camera.position;
var vector = projector.unprojectVector(new THREE.Vector3(xyPosition.x,xyPosition.y,1), camera); var vector = projector.unprojectVector(new THREE.Vector3(xyPosition.x,xyPosition.y,1), camera);
var z_plane_point = z; var z_plane_point = z;


var scalar =(z_plane_point - origin.z) / vector.z var scalar =(z_plane_point - origin.z) / vector.z
var intersection = origin.clone().addSelf( vector.multiplyScalar(scalar) ); var intersection = origin.clone().addSelf( vector.multiplyScalar(scalar) );


debugger; debugger;
return intersection; return intersection;
} }

0 comments on commit 321407a

Please sign in to comment.