[Orxonox-commit 2278] r6994 - in code/branches/presentation3: . data/levels data/particle src/libraries/core src/modules src/modules/designtools src/modules/overlays/hud src/orxonox/controllers src/orxonox/worldentities
scheusso at orxonox.net
scheusso at orxonox.net
Thu May 27 22:31:26 CEST 2010
Author: scheusso
Date: 2010-05-27 22:31:25 +0200 (Thu, 27 May 2010)
New Revision: 6994
Added:
code/branches/presentation3/data/levels/test_stars.oxw
code/branches/presentation3/data/particle/fog.particle
code/branches/presentation3/src/modules/designtools/
code/branches/presentation3/src/modules/designtools/CMakeLists.txt
code/branches/presentation3/src/modules/designtools/CreateStars.cc
code/branches/presentation3/src/modules/designtools/CreateStars.h
code/branches/presentation3/src/modules/designtools/DesignToolsPrereqs.h
code/branches/presentation3/src/modules/designtools/SkyboxGenerator.cc
code/branches/presentation3/src/modules/designtools/SkyboxGenerator.h
Removed:
code/branches/presentation3/src/modules/designtools/CMakeLists.txt
code/branches/presentation3/src/modules/designtools/CreateStars.cc
code/branches/presentation3/src/modules/designtools/CreateStars.h
code/branches/presentation3/src/modules/designtools/DesignToolsPrereqs.h
code/branches/presentation3/src/modules/designtools/SkyboxGenerator.cc
code/branches/presentation3/src/modules/designtools/SkyboxGenerator.h
Modified:
code/branches/presentation3/
code/branches/presentation3/src/libraries/core/Core.cc
code/branches/presentation3/src/modules/CMakeLists.txt
code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.cc
code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.h
code/branches/presentation3/src/orxonox/controllers/AIController.cc
code/branches/presentation3/src/orxonox/worldentities/ControllableEntity.h
Log:
merged skybox2 branch to presentation merger branch
Property changes on: code/branches/presentation3
___________________________________________________________________
Modified: svn:mergeinfo
- /code/branches/buildsystem:1874-2276,2278-2400
/code/branches/buildsystem2:2506-2658
/code/branches/buildsystem3:2662-2708
/code/branches/ceguilua:1802-1808
/code/branches/chat:6527-6797
/code/branches/chat2:6836-6910
/code/branches/console:5941-6104
/code/branches/core3:1572-1739
/code/branches/core4:3221-3224,3227,3234-3238,3242,3244-3250,3252-3254,3256,3259-3261,3264-3265,3268-3275,3277-3278,3280,3284-3285,3287,3289-3294,3305,3309-3310
/code/branches/core5:5768-5928,6009
/code/branches/gamestate:6430-6572,6621-6661
/code/branches/gamestates2:6594-6745
/code/branches/gametypes:2826-3031
/code/branches/gcc43:1580
/code/branches/gui:1635-1723,2795-2894
/code/branches/hudelements:6584-6941
/code/branches/ingamemenu:6000-6023
/code/branches/input:1629-1636
/code/branches/libraries:5612-5692
/code/branches/libraries2:5703-5737
/code/branches/lod:6586-6911
/code/branches/lodfinal:2372-2411
/code/branches/map:2801-3086,3089
/code/branches/menu:5941-6146,6148
/code/branches/miniprojects:2754-2824
/code/branches/netp2:2835-2988
/code/branches/netp3:2988-3082
/code/branches/netp6:3214-3302
/code/branches/network:2356
/code/branches/network64:2210-2355
/code/branches/objecthierarchy:1911-2085,2100,2110-2169
/code/branches/objecthierarchy2:2171-2479
/code/branches/overlay:2117-2385
/code/branches/particles:2829-3085
/code/branches/particles2:6050-6106,6109
/code/branches/pch:3113-3194
/code/branches/physics:1912-2055,2107-2439
/code/branches/physics_merge:2436-2457
/code/branches/pickup2:5942-6405
/code/branches/pickup3:6418-6523
/code/branches/pickup4:6594-6710
/code/branches/pickups:1926-2086,2127,2827-2915
/code/branches/pickups2:2107-2497,2915-3071
/code/branches/ppspickups1:6552-6708
/code/branches/ppspickups2:6527-6532,6554-6709
/code/branches/presentation:2369-2652,2654-2660
/code/branches/presentation2:6106-6416
/code/branches/questsystem:1894-2088
/code/branches/questsystem2:2107-2259
/code/branches/questsystem5:2776-2905
/code/branches/resource:3327-3366
/code/branches/resource2:3372-5694
/code/branches/rocket:6523-6950
/code/branches/script_trigger:1295-1953,1955
/code/branches/sound:2829-3010
/code/branches/sound3:5941-6102
/code/branches/steering:5949-6091
/code/branches/weapon:1925-2094
/code/branches/weapon2:2107-2488
/code/branches/weapons:2897-3051
/code/branches/weaponsystem:2742-2890
+ /code/branches/buildsystem:1874-2276,2278-2400
/code/branches/buildsystem2:2506-2658
/code/branches/buildsystem3:2662-2708
/code/branches/ceguilua:1802-1808
/code/branches/chat:6527-6797
/code/branches/chat2:6836-6910
/code/branches/console:5941-6104
/code/branches/core3:1572-1739
/code/branches/core4:3221-3224,3227,3234-3238,3242,3244-3250,3252-3254,3256,3259-3261,3264-3265,3268-3275,3277-3278,3280,3284-3285,3287,3289-3294,3305,3309-3310
/code/branches/core5:5768-5928,6009
/code/branches/gamestate:6430-6572,6621-6661
/code/branches/gamestates2:6594-6745
/code/branches/gametypes:2826-3031
/code/branches/gcc43:1580
/code/branches/gui:1635-1723,2795-2894
/code/branches/hudelements:6584-6941
/code/branches/ingamemenu:6000-6023
/code/branches/input:1629-1636
/code/branches/libraries:5612-5692
/code/branches/libraries2:5703-5737
/code/branches/lod:6586-6911
/code/branches/lodfinal:2372-2411
/code/branches/map:2801-3086,3089
/code/branches/menu:5941-6146,6148
/code/branches/miniprojects:2754-2824
/code/branches/netp2:2835-2988
/code/branches/netp3:2988-3082
/code/branches/netp6:3214-3302
/code/branches/network:2356
/code/branches/network64:2210-2355
/code/branches/objecthierarchy:1911-2085,2100,2110-2169
/code/branches/objecthierarchy2:2171-2479
/code/branches/overlay:2117-2385
/code/branches/particles:2829-3085
/code/branches/particles2:6050-6106,6109
/code/branches/pch:3113-3194
/code/branches/physics:1912-2055,2107-2439
/code/branches/physics_merge:2436-2457
/code/branches/pickup2:5942-6405
/code/branches/pickup3:6418-6523
/code/branches/pickup4:6594-6710
/code/branches/pickups:1926-2086,2127,2827-2915
/code/branches/pickups2:2107-2497,2915-3071
/code/branches/ppspickups1:6552-6708
/code/branches/ppspickups2:6527-6532,6554-6709
/code/branches/presentation:2369-2652,2654-2660
/code/branches/presentation2:6106-6416
/code/branches/questsystem:1894-2088
/code/branches/questsystem2:2107-2259
/code/branches/questsystem5:2776-2905
/code/branches/resource:3327-3366
/code/branches/resource2:3372-5694
/code/branches/rocket:6523-6950
/code/branches/script_trigger:1295-1953,1955
/code/branches/skybox2:6559-6989
/code/branches/sound:2829-3010
/code/branches/sound3:5941-6102
/code/branches/steering:5949-6091
/code/branches/weapon:1925-2094
/code/branches/weapon2:2107-2488
/code/branches/weapons:2897-3051
/code/branches/weaponsystem:2742-2890
Copied: code/branches/presentation3/data/levels/test_stars.oxw (from rev 6989, code/branches/skybox2/data/levels/test_stars.oxw)
===================================================================
--- code/branches/presentation3/data/levels/test_stars.oxw (rev 0)
+++ code/branches/presentation3/data/levels/test_stars.oxw 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,43 @@
+<?lua
+ include("stats.oxo")
+ include("hudtemplates3.oxo")
+?>
+
+<?lua
+ include("templates/spaceship_assff.oxt")
+ include("templates/spaceship_pirate.oxt")
+?>
+
+<Level
+ name = "Sample"
+ description = "Just a few tests"
+>
+ <Scene
+ ambientlight = "0.8, 0.8, 0.8"
+ >
+
+<!--Rocket position="-10, 3.5,800" velocity="0,0,-100">
+ <attached>
+ <Model pitch=180 position="0,0,0" scale=1.5 mesh="rocket_test.mesh" >
+ <attached>
+ <ParticleEmitter pitch=0 roll=0 position="0,5,0" source="Orxonox/laser" lifetime=2.0 loop=1 startdelay=3.0/>
+ <ParticleEmitter pitch=-90 roll=0 position="0,-5,0" source="Orxonox/particlecanon" lifetime=2.0 loop=1 startdelay=3.0/>
+ <ParticleEmitter pitch=-90 roll=0 position="0,0,-2" source="Orxonox/rocketfire" lifetime=2.0 loop=1 startdelay=3.0 />
+ <ParticleEmitter pitch=-90 roll=0 position="0,0,-2" source="Orxonox/smoke" lifetime=2.0 loop=1 startdelay=3.0 />
+ </attached>
+ </Model>
+ </attached>
+ </Rocket-->
+
+ <CreateStars numStars="6000" material="Examples/Flare" colour="1,1,1" radius=10000 colourDiff=0.1/>
+
+ <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
+ <SpawnPoint position="0,0,100" lookat="0,0,0" spawnclass=SpaceShip pawndesign=spaceshipassff />
+
+ <ParticleEmitter position="0,10000,0" source="Orxonox/fog" />
+ <ParticleEmitter position="6000,7000,0" source="Orxonox/fog2" />
+ <ParticleEmitter position="-6000,-7000,0" source="Orxonox/fog3" />
+ <ParticleEmitter position="-6000,0,9000" source="Orxonox/fog4" />
+ <ParticleEmitter position="2000,-7000,-5963" source="Orxonox/fog3" />
+ </Scene>
+</Level>
Copied: code/branches/presentation3/data/particle/fog.particle (from rev 6989, code/branches/skybox2/data/particle/fog.particle)
===================================================================
--- code/branches/presentation3/data/particle/fog.particle (rev 0)
+++ code/branches/presentation3/data/particle/fog.particle 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,241 @@
+
+particle_system Orxonox/fog
+{
+ quota 1000
+ material PE/smoke4
+ particle_width 2000
+ particle_height 1500
+ cull_each false
+ renderer billboard
+ sorted false
+ local_space false
+ iteration_interval 0
+ nonvisible_update_timeout 0
+ billboard_type point
+ billboard_origin center
+ billboard_rotation_type vertex
+ common_up_vector 0 1 0
+ point_rendering false
+ accurate_facing false
+
+ emitter Ellipsoid
+ {
+ angle 180
+ colour 0.3 0.3 0.3 0.25
+ colour_range_start 0.3 0.3 0.3 0.1
+ colour_range_end 0.3 0.3 0.3 0.25
+ direction 0 1 0
+ emission_rate 16
+ position 0 0 0
+ velocity 2
+ velocity_min 2
+ velocity_max 2
+ time_to_live 100000
+ time_to_live_min 100000
+ time_to_live_max 100000
+ duration 5
+ duration_min 4
+ duration_max 7
+ repeat_delay 0
+ repeat_delay_min 0
+ repeat_delay_max 0
+ width 6000
+ height 1800
+ depth 100
+ }
+
+ affector Scaler
+ {
+ rate 3
+ }
+
+ affector Rotator
+ {
+ rotation_range_start 0
+ rotation_range_end 360
+ rotation_speed_range_start 0
+ rotation_speed_range_end 0
+ }
+
+}
+
+
+particle_system Orxonox/fog2
+{
+ quota 1000
+ material PE/smoke4
+ particle_width 2000
+ particle_height 1500
+ cull_each false
+ renderer billboard
+ sorted false
+ local_space false
+ iteration_interval 0
+ nonvisible_update_timeout 0
+ billboard_type point
+ billboard_origin center
+ billboard_rotation_type vertex
+ common_up_vector 0 1 0
+ point_rendering false
+ accurate_facing false
+
+ emitter Ellipsoid
+ {
+ angle 180
+ colour 0.3 0.3 0.3 0.3
+ colour_range_start 0.3 0.3 0.3 0.1
+ colour_range_end 0.3 0.3 0.3 0.3
+ direction 0 1 0
+ emission_rate 16
+ position 0 0 0
+ velocity 2
+ velocity_min 2
+ velocity_max 2
+ time_to_live 100000
+ time_to_live_min 100000
+ time_to_live_max 100000
+ duration 5
+ duration_min 4
+ duration_max 7
+ repeat_delay 0
+ repeat_delay_min 0
+ repeat_delay_max 0
+ width 10000
+ height 4000
+ depth 100
+ }
+
+ affector Scaler
+ {
+ rate 3
+ }
+
+ affector Rotator
+ {
+ rotation_range_start 0
+ rotation_range_end 360
+ rotation_speed_range_start 0
+ rotation_speed_range_end 0
+ }
+
+}
+
+particle_system Orxonox/fog3
+{
+ quota 1000
+ material PE/smoke4
+ particle_width 2000
+ particle_height 1500
+ cull_each false
+ renderer billboard
+ sorted false
+ local_space false
+ iteration_interval 0
+ nonvisible_update_timeout 0
+ billboard_type point
+ billboard_origin center
+ billboard_rotation_type vertex
+ common_up_vector 0 1 0
+ point_rendering false
+ accurate_facing false
+
+ emitter Ellipsoid
+ {
+ angle 180
+ colour 0.3 0.3 0.3 0.3
+ colour_range_start 0.3 0.3 0.3 0.1
+ colour_range_end 0.3 0.3 0.3 0.25
+ direction 0 1 0
+ emission_rate 22
+ position 0 0 0
+ velocity 2
+ velocity_min 2
+ velocity_max 2
+ time_to_live 100000
+ time_to_live_min 100000
+ time_to_live_max 100000
+ duration 5
+ duration_min 4
+ duration_max 7
+ repeat_delay 0
+ repeat_delay_min 0
+ repeat_delay_max 0
+ width 8000
+ height 10000
+ depth 6000
+ }
+
+ affector Scaler
+ {
+ rate 3
+ }
+
+ affector Rotator
+ {
+ rotation_range_start 0
+ rotation_range_end 360
+ rotation_speed_range_start 0
+ rotation_speed_range_end 0
+ }
+
+}
+
+particle_system Orxonox/fog4
+{
+ quota 1000
+ material PE/smoke4
+ particle_width 2000
+ particle_height 1500
+ cull_each false
+ renderer billboard
+ sorted false
+ local_space false
+ iteration_interval 0
+ nonvisible_update_timeout 0
+ billboard_type point
+ billboard_origin center
+ billboard_rotation_type vertex
+ common_up_vector 0 1 0
+ point_rendering false
+ accurate_facing false
+
+ emitter Ellipsoid
+ {
+ angle 180
+ colour 0.3 0.3 0.3 0.3
+ colour_range_start 0.3 0.3 0.3 0.1
+ colour_range_end 0.3 0.3 0.3 0.25
+ direction 0 1 0
+ emission_rate 22
+ position 0 0 0
+ velocity 2
+ velocity_min 2
+ velocity_max 2
+ time_to_live 100000
+ time_to_live_min 100000
+ time_to_live_max 100000
+ duration 5
+ duration_min 4
+ duration_max 7
+ repeat_delay 0
+ repeat_delay_min 0
+ repeat_delay_max 0
+ width 10000
+ height 10000
+ depth 10000
+ }
+
+ affector Scaler
+ {
+ rate 3
+ }
+
+ affector Rotator
+ {
+ rotation_range_start 0
+ rotation_range_end 360
+ rotation_speed_range_start 0
+ rotation_speed_range_end 0
+ }
+
+}
Modified: code/branches/presentation3/src/libraries/core/Core.cc
===================================================================
--- code/branches/presentation3/src/libraries/core/Core.cc 2010-05-27 20:26:19 UTC (rev 6993)
+++ code/branches/presentation3/src/libraries/core/Core.cc 2010-05-27 20:31:25 UTC (rev 6994)
@@ -78,6 +78,7 @@
SetCommandLineArgument(settingsFile, "orxonox.ini").information("THE configuration file");
SetCommandLineSwitch(noIOConsole).information("Use this if you don't want to use the IOConsole (for instance for Lua debugging)");
+
#ifdef ORXONOX_PLATFORM_WINDOWS
SetCommandLineArgument(limitToCPU, 1).information("Limits the program to one CPU/core (1, 2, 3, etc.). Default is the first core (faster than off)");
#endif
Modified: code/branches/presentation3/src/modules/CMakeLists.txt
===================================================================
--- code/branches/presentation3/src/modules/CMakeLists.txt 2010-05-27 20:26:19 UTC (rev 6993)
+++ code/branches/presentation3/src/modules/CMakeLists.txt 2010-05-27 20:31:25 UTC (rev 6994)
@@ -32,3 +32,4 @@
ADD_SUBDIRECTORY(pong)
ADD_SUBDIRECTORY(questsystem)
ADD_SUBDIRECTORY(weapons)
+ADD_SUBDIRECTORY(designtools)
Deleted: code/branches/presentation3/src/modules/designtools/CMakeLists.txt
===================================================================
--- code/branches/skybox2/src/modules/designtools/CMakeLists.txt 2010-05-27 19:04:21 UTC (rev 6989)
+++ code/branches/presentation3/src/modules/designtools/CMakeLists.txt 2010-05-27 20:31:25 UTC (rev 6994)
@@ -1,14 +0,0 @@
-SET_SOURCE_FILES(DESIGNTOOLS_SRC_FILES
- SkyboxGenerator.cc
- CreateStars.cc
-)
-
-ORXONOX_ADD_LIBRARY(designtools
- MODULE
- FIND_HEADER_FILES
- DEFINE_SYMBOL
- "DESIGNTOOLS_SHARED_BUILD"
- LINK_LIBRARIES
- orxonox
- SOURCE_FILES ${DESIGNTOOLS_SRC_FILES}
-)
Copied: code/branches/presentation3/src/modules/designtools/CMakeLists.txt (from rev 6989, code/branches/skybox2/src/modules/designtools/CMakeLists.txt)
===================================================================
--- code/branches/presentation3/src/modules/designtools/CMakeLists.txt (rev 0)
+++ code/branches/presentation3/src/modules/designtools/CMakeLists.txt 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,14 @@
+SET_SOURCE_FILES(DESIGNTOOLS_SRC_FILES
+ SkyboxGenerator.cc
+ CreateStars.cc
+)
+
+ORXONOX_ADD_LIBRARY(designtools
+ MODULE
+ FIND_HEADER_FILES
+ DEFINE_SYMBOL
+ "DESIGNTOOLS_SHARED_BUILD"
+ LINK_LIBRARIES
+ orxonox
+ SOURCE_FILES ${DESIGNTOOLS_SRC_FILES}
+)
Deleted: code/branches/presentation3/src/modules/designtools/CreateStars.cc
===================================================================
--- code/branches/skybox2/src/modules/designtools/CreateStars.cc 2010-05-27 19:04:21 UTC (rev 6989)
+++ code/branches/presentation3/src/modules/designtools/CreateStars.cc 2010-05-27 20:31:25 UTC (rev 6994)
@@ -1,133 +0,0 @@
-/*
- * ORXONOX - the hottest 3D action shooter ever to exist
- * > www.orxonox.net <
- *
- *
- * License notice:
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Author:
- * Gion-Andri Cantieni
- * Co-authors:
- * ...
- *
- */
-
-#include "CreateStars.h"
-
-#include "core/ConsoleCommand.h"
-#include "core/CoreIncludes.h"
-#include "core/ConfigValueIncludes.h"
-#include "core/ScopedSingletonManager.h"
-#include "core/BaseObject.h"
-
-
-#include "core/XMLPort.h"
-
-#include "graphics/Billboard.h"
-
-#include <OgreVector3.h>
-#include <math.h>
-
-namespace orxonox
-{
-
- CreateFactory(CreateStars);
-
- CreateStars::CreateStars(BaseObject* creator) : BaseObject(creator)
-
- {
- RegisterObject(CreateStars);
- this->material_ = "Examples/Flare";
- this->alpha_ = 0.7;
- this->alphaDiff_ = 0.5;
- this->radiusDiff_ = 0.9;
- this->colour_.r = 1;
- this->colour_.g = 1;
- this->colour_.b = 1;
- this->colourDiff_ = 0.1;
- }
-
- CreateStars::~CreateStars()
- {
- while( billboards_.size()!=0 )
- {
- delete(billboards_.back());
- billboards_.pop_back();
-
- }
-
- billboards_.clear();
- }
-
- void CreateStars::createBillboards()
- {
-
- for(int i=0; i < numStars_; i++)
- {
- Billboard* bb = new Billboard(this);
-
- float r = rnd(-colourDiff_,colourDiff_);
- float g = rnd(-colourDiff_,colourDiff_);
- float b = rnd(-colourDiff_,colourDiff_);
- orxonox::ColourValue thisColour = colour_;
- float alpha = alpha_+rnd(-alphaDiff_,alphaDiff_);
- thisColour.r=clamp((thisColour.r+r)*alpha, 0.0f, 1.0f);
- thisColour.g=clamp((thisColour.g+g)*alpha, 0.0f, 1.0f);
- thisColour.b=clamp((thisColour.b+b)*alpha, 0.0f, 1.0f);
-
- bb->setMaterial(material_);
- bb->setColour(thisColour);
-
- float phi;
- float teta;
-
- while(1)
- {
- phi = rnd(2*M_PI);
- teta = rnd(M_PI);
- float random = rnd(1);
- if(sin(teta)>random) break;
- }
- float radius = rnd(radiusDiff_,1)*radius_;
- bb->setPosition( PolarToCartesian(phi, teta, radius) );
- billboards_.push_back(bb);
- }
- }
-
- Vector3 CreateStars::PolarToCartesian(float phi, float teta, float radius)
- {
- float x = radius * cos(phi) * sin(teta);
- float y = radius * sin(phi) * sin(teta);
- float z = radius * cos(teta);
- return Vector3(x,y,z);
- }
-
- void CreateStars::XMLPort(Element& xmlelement, XMLPort::Mode mode)
- {
- SUPER(CreateStars, XMLPort, xmlelement, mode);
-
- XMLPortParam(CreateStars, "numStars", setNumStars, getNumStars, xmlelement, mode);
- XMLPortParam(CreateStars, "material", setMaterial, getMaterial, xmlelement, mode);
- XMLPortParam(CreateStars, "colour", setColour, getColour, xmlelement, mode);
- XMLPortParam(CreateStars, "alpha", setAlpha, getAlpha, xmlelement, mode);
- XMLPortParam(CreateStars, "colourDiff", setColourDiff, getColourDiff, xmlelement, mode);
- XMLPortParam(CreateStars, "alphaDiff", setAlphaDiff, getAlphaDiff, xmlelement, mode);
- XMLPortParam(CreateStars, "radiusDiff", setRadiusDiff, getRadiusDiff, xmlelement, mode);
- XMLPortParam(CreateStars, "radius", setRadius, getRadius, xmlelement, mode);
- }
-
-}
Copied: code/branches/presentation3/src/modules/designtools/CreateStars.cc (from rev 6989, code/branches/skybox2/src/modules/designtools/CreateStars.cc)
===================================================================
--- code/branches/presentation3/src/modules/designtools/CreateStars.cc (rev 0)
+++ code/branches/presentation3/src/modules/designtools/CreateStars.cc 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,133 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Gion-Andri Cantieni
+ * Co-authors:
+ * ...
+ *
+ */
+
+#include "CreateStars.h"
+
+#include "core/ConsoleCommand.h"
+#include "core/CoreIncludes.h"
+#include "core/ConfigValueIncludes.h"
+#include "core/ScopedSingletonManager.h"
+#include "core/BaseObject.h"
+
+
+#include "core/XMLPort.h"
+
+#include "graphics/Billboard.h"
+
+#include <OgreVector3.h>
+#include <math.h>
+
+namespace orxonox
+{
+
+ CreateFactory(CreateStars);
+
+ CreateStars::CreateStars(BaseObject* creator) : BaseObject(creator)
+
+ {
+ RegisterObject(CreateStars);
+ this->material_ = "Examples/Flare";
+ this->alpha_ = 0.7;
+ this->alphaDiff_ = 0.5;
+ this->radiusDiff_ = 0.9;
+ this->colour_.r = 1;
+ this->colour_.g = 1;
+ this->colour_.b = 1;
+ this->colourDiff_ = 0.1;
+ }
+
+ CreateStars::~CreateStars()
+ {
+ while( billboards_.size()!=0 )
+ {
+ delete(billboards_.back());
+ billboards_.pop_back();
+
+ }
+
+ billboards_.clear();
+ }
+
+ void CreateStars::createBillboards()
+ {
+
+ for(int i=0; i < numStars_; i++)
+ {
+ Billboard* bb = new Billboard(this);
+
+ float r = rnd(-colourDiff_,colourDiff_);
+ float g = rnd(-colourDiff_,colourDiff_);
+ float b = rnd(-colourDiff_,colourDiff_);
+ orxonox::ColourValue thisColour = colour_;
+ float alpha = alpha_+rnd(-alphaDiff_,alphaDiff_);
+ thisColour.r=clamp((thisColour.r+r)*alpha, 0.0f, 1.0f);
+ thisColour.g=clamp((thisColour.g+g)*alpha, 0.0f, 1.0f);
+ thisColour.b=clamp((thisColour.b+b)*alpha, 0.0f, 1.0f);
+
+ bb->setMaterial(material_);
+ bb->setColour(thisColour);
+
+ float phi;
+ float teta;
+
+ while(1)
+ {
+ phi = rnd(2*M_PI);
+ teta = rnd(M_PI);
+ float random = rnd(1);
+ if(sin(teta)>random) break;
+ }
+ float radius = rnd(radiusDiff_,1)*radius_;
+ bb->setPosition( PolarToCartesian(phi, teta, radius) );
+ billboards_.push_back(bb);
+ }
+ }
+
+ Vector3 CreateStars::PolarToCartesian(float phi, float teta, float radius)
+ {
+ float x = radius * cos(phi) * sin(teta);
+ float y = radius * sin(phi) * sin(teta);
+ float z = radius * cos(teta);
+ return Vector3(x,y,z);
+ }
+
+ void CreateStars::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+ {
+ SUPER(CreateStars, XMLPort, xmlelement, mode);
+
+ XMLPortParam(CreateStars, "numStars", setNumStars, getNumStars, xmlelement, mode);
+ XMLPortParam(CreateStars, "material", setMaterial, getMaterial, xmlelement, mode);
+ XMLPortParam(CreateStars, "colour", setColour, getColour, xmlelement, mode);
+ XMLPortParam(CreateStars, "alpha", setAlpha, getAlpha, xmlelement, mode);
+ XMLPortParam(CreateStars, "colourDiff", setColourDiff, getColourDiff, xmlelement, mode);
+ XMLPortParam(CreateStars, "alphaDiff", setAlphaDiff, getAlphaDiff, xmlelement, mode);
+ XMLPortParam(CreateStars, "radiusDiff", setRadiusDiff, getRadiusDiff, xmlelement, mode);
+ XMLPortParam(CreateStars, "radius", setRadius, getRadius, xmlelement, mode);
+ }
+
+}
Deleted: code/branches/presentation3/src/modules/designtools/CreateStars.h
===================================================================
--- code/branches/skybox2/src/modules/designtools/CreateStars.h 2010-05-27 19:04:21 UTC (rev 6989)
+++ code/branches/presentation3/src/modules/designtools/CreateStars.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -1,126 +0,0 @@
-/*
- * ORXONOX - the hottest 3D action shooter ever to exist
- * > www.orxonox.net <
- *
- *
- * License notice:
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Author:
- * Gion-Andri Cantieni
- * Co-authors:
- * ...
- *
- */
-
-
-#include "core/BaseObject.h"
-
-#include "graphics/Billboard.h"
-
-
-namespace orxonox
-{
- class CreateStars : public BaseObject
- {
- public:
- CreateStars(orxonox::BaseObject* creator);
- virtual ~CreateStars();
-
- void createBillboards();
-
- void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-
- void setNumStars(int num) {
- this->numStars_ = num;
- }
-
- int getNumStars(){
- return this->numStars_;
- }
-
- void setMaterial(const std::string& material) {
- this->material_ = material;
- }
-
- std::string& getMaterial(){
- return this->material_;
- }
-
- void setColour(const orxonox::ColourValue& colour) {
- this->colour_ = colour;
- }
-
- ColourValue& getColour() {
- return this->colour_;
- }
-
- void setAlpha(float alpha) {
- this->alpha_ = alpha;
- }
-
- float getAlpha() {
- return this->alpha_;
- }
-
- void setColourDiff(float colourDiff) {
- this->colourDiff_ = colourDiff;
- }
-
- float getColourDiff() {
- return this->colourDiff_;
- }
-
- void setAlphaDiff(float alphaDiff) {
- this->alphaDiff_ = alphaDiff;
- }
-
- float getAlphaDiff() {
- return this->alphaDiff_;
- }
-
- void setRadiusDiff(float radiusDiff) {
- this->radiusDiff_ = radiusDiff;
- }
-
- float getRadiusDiff() {
- return this->radiusDiff_;
- }
-
- void setRadius(unsigned int dist) {
- this->radius_ = dist;
- this->createBillboards();
- }
-
- unsigned int getRadius(){
- return this->radius_;
- }
-
- Vector3 PolarToCartesian(float alpha, float beta, float radius);
-
- private:
- int numStars_;
- std::string material_;
- orxonox::ColourValue colour_;
- std::vector<Billboard*> billboards_;
- float radius_;
- float alpha_;
- float colourDiff_;
- float alphaDiff_;
- float radiusDiff_;
-
- };
-}
Copied: code/branches/presentation3/src/modules/designtools/CreateStars.h (from rev 6989, code/branches/skybox2/src/modules/designtools/CreateStars.h)
===================================================================
--- code/branches/presentation3/src/modules/designtools/CreateStars.h (rev 0)
+++ code/branches/presentation3/src/modules/designtools/CreateStars.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,126 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Gion-Andri Cantieni
+ * Co-authors:
+ * ...
+ *
+ */
+
+
+#include "core/BaseObject.h"
+
+#include "graphics/Billboard.h"
+
+
+namespace orxonox
+{
+ class CreateStars : public BaseObject
+ {
+ public:
+ CreateStars(orxonox::BaseObject* creator);
+ virtual ~CreateStars();
+
+ void createBillboards();
+
+ void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+
+ void setNumStars(int num) {
+ this->numStars_ = num;
+ }
+
+ int getNumStars(){
+ return this->numStars_;
+ }
+
+ void setMaterial(const std::string& material) {
+ this->material_ = material;
+ }
+
+ std::string& getMaterial(){
+ return this->material_;
+ }
+
+ void setColour(const orxonox::ColourValue& colour) {
+ this->colour_ = colour;
+ }
+
+ ColourValue& getColour() {
+ return this->colour_;
+ }
+
+ void setAlpha(float alpha) {
+ this->alpha_ = alpha;
+ }
+
+ float getAlpha() {
+ return this->alpha_;
+ }
+
+ void setColourDiff(float colourDiff) {
+ this->colourDiff_ = colourDiff;
+ }
+
+ float getColourDiff() {
+ return this->colourDiff_;
+ }
+
+ void setAlphaDiff(float alphaDiff) {
+ this->alphaDiff_ = alphaDiff;
+ }
+
+ float getAlphaDiff() {
+ return this->alphaDiff_;
+ }
+
+ void setRadiusDiff(float radiusDiff) {
+ this->radiusDiff_ = radiusDiff;
+ }
+
+ float getRadiusDiff() {
+ return this->radiusDiff_;
+ }
+
+ void setRadius(unsigned int dist) {
+ this->radius_ = dist;
+ this->createBillboards();
+ }
+
+ unsigned int getRadius(){
+ return this->radius_;
+ }
+
+ Vector3 PolarToCartesian(float alpha, float beta, float radius);
+
+ private:
+ int numStars_;
+ std::string material_;
+ orxonox::ColourValue colour_;
+ std::vector<Billboard*> billboards_;
+ float radius_;
+ float alpha_;
+ float colourDiff_;
+ float alphaDiff_;
+ float radiusDiff_;
+
+ };
+}
Deleted: code/branches/presentation3/src/modules/designtools/DesignToolsPrereqs.h
===================================================================
--- code/branches/skybox2/src/modules/designtools/DesignToolsPrereqs.h 2010-05-27 19:04:21 UTC (rev 6989)
+++ code/branches/presentation3/src/modules/designtools/DesignToolsPrereqs.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -1,69 +0,0 @@
-/*
- * ORXONOX - the hottest 3D action shooter ever to exist
- * > www.orxonox.net <
- *
- *
- * License notice:
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Author:
- * Oliver Scheuss
- * Co-authors:
- * ...
- *
- */
-
-/**
- at file
- at brief
- Shared library macros, enums, constants and forward declarations for the pong module
-*/
-
-#ifndef _DesignToolsPrereqs_H__
-#define _DesignToolsPrereqs_H__
-
-#include "OrxonoxConfig.h"
-#include "OrxonoxPrereqs.h"
-
-//-----------------------------------------------------------------------
-// Shared library settings
-//-----------------------------------------------------------------------
-
-#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(ORXONOX_STATIC_BUILD)
-# ifdef DESIGNTOOLS_SHARED_BUILD
-# define _DesignToolsExport __declspec(dllexport)
-# else
-# if defined( __MINGW32__ )
-# define _DesignToolsExport
-# else
-# define _DesignToolsExport __declspec(dllimport)
-# endif
-# endif
-#elif defined ( ORXONOX_GCC_VISIBILITY )
-# define _DesignToolsExport __attribute__ ((visibility("default")))
-#else
-# define _DesignToolsExport
-#endif
-
-//-----------------------------------------------------------------------
-// Forward declarations
-//-----------------------------------------------------------------------
-
-namespace orxonox
-{
-}
-
-#endif /* _DesignToolsPrereqs_H__ */
Copied: code/branches/presentation3/src/modules/designtools/DesignToolsPrereqs.h (from rev 6989, code/branches/skybox2/src/modules/designtools/DesignToolsPrereqs.h)
===================================================================
--- code/branches/presentation3/src/modules/designtools/DesignToolsPrereqs.h (rev 0)
+++ code/branches/presentation3/src/modules/designtools/DesignToolsPrereqs.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,69 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Oliver Scheuss
+ * Co-authors:
+ * ...
+ *
+ */
+
+/**
+ at file
+ at brief
+ Shared library macros, enums, constants and forward declarations for the pong module
+*/
+
+#ifndef _DesignToolsPrereqs_H__
+#define _DesignToolsPrereqs_H__
+
+#include "OrxonoxConfig.h"
+#include "OrxonoxPrereqs.h"
+
+//-----------------------------------------------------------------------
+// Shared library settings
+//-----------------------------------------------------------------------
+
+#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(ORXONOX_STATIC_BUILD)
+# ifdef DESIGNTOOLS_SHARED_BUILD
+# define _DesignToolsExport __declspec(dllexport)
+# else
+# if defined( __MINGW32__ )
+# define _DesignToolsExport
+# else
+# define _DesignToolsExport __declspec(dllimport)
+# endif
+# endif
+#elif defined ( ORXONOX_GCC_VISIBILITY )
+# define _DesignToolsExport __attribute__ ((visibility("default")))
+#else
+# define _DesignToolsExport
+#endif
+
+//-----------------------------------------------------------------------
+// Forward declarations
+//-----------------------------------------------------------------------
+
+namespace orxonox
+{
+}
+
+#endif /* _DesignToolsPrereqs_H__ */
Deleted: code/branches/presentation3/src/modules/designtools/SkyboxGenerator.cc
===================================================================
--- code/branches/skybox2/src/modules/designtools/SkyboxGenerator.cc 2010-05-27 19:04:21 UTC (rev 6989)
+++ code/branches/presentation3/src/modules/designtools/SkyboxGenerator.cc 2010-05-27 20:31:25 UTC (rev 6994)
@@ -1,159 +0,0 @@
-/*
- * ORXONOX - the hottest 3D action shooter ever to exist
- * > www.orxonox.net <
- *
- *
- * License notice:
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Author:
- * Gion-Andri Cantieni
- * Co-authors:
- * ...
- *
- */
-
-#include "SkyboxGenerator.h"
-
-#include <string>
-#include <cassert>
-#include <OgreRenderWindow.h>
-#include <OgreCamera.h>
-
-#include "core/ConsoleCommand.h"
-#include "core/CoreIncludes.h"
-#include "core/ConfigValueIncludes.h"
-#include "core/ScopedSingletonManager.h"
-#include "controllers/HumanController.h"
-#include "worldentities/CameraPosition.h"
-#include "worldentities/ControllableEntity.h"
-#include "core/GraphicsManager.h"
-#include "core/CommandExecutor.h"
-#include "graphics/Camera.h"
-
-
-
-namespace orxonox
-{
-
- SetConsoleCommand(SkyboxGenerator, createSkybox, true);
-
- ManageScopedSingleton(SkyboxGenerator, ScopeID::Graphics, false);
-
- SkyboxGenerator::SkyboxGenerator() : iterateOverDirections_(0)
- {
- RegisterRootObject(SkyboxGenerator);
-
- this->setConfigValues();
- takeScreenshot_ = false;
- this->captionsRemoved_ = false;
- }
-
- SkyboxGenerator::~SkyboxGenerator()
- {
-
- }
-
- void SkyboxGenerator::setConfigValues( )
- {
- SetConfigValue(skyboxPrefix_, "SkyboxFile_");
- }
-
- void SkyboxGenerator::tick(float dt)
- {
- if( takeScreenshot_ == true )
- {
- if(!this->captionsRemoved_)
- {
- CommandExecutor::execute("setGametypeStatus false");
- this->captionsRemoved_ = true;
- return;
- }
-
- ControllableEntity* ce = HumanController::getLocalControllerSingleton()->getControllableEntity();
- Camera* camera = ce->getCamera();
- assert(ce);
-
- Ogre::RenderWindow* w = GraphicsManager::getInstance().getRenderWindow();
-
-
- switch (iterateOverDirections_)
- {
- case 0 :
- fovy_ = camera->getOgreCamera()->getFOVy();
- camera->getOgreCamera()->setFOVy(Degree(90));
- aspectRatio_ = camera->getOgreCamera()->getAspectRatio();
- camera->getOgreCamera()->setAspectRatio(1);
- iterateOverDirections_++;
- break;
- case 1 :
- w->writeContentsToFile(skyboxPrefix_+"fr.png");
- ce->yaw(Degree(90));
- iterateOverDirections_++;
- break;
-
- case 2 :
- w->writeContentsToFile(skyboxPrefix_+"lf.png");
- ce->yaw(Degree(90));
- iterateOverDirections_++;
- break;
-
- case 3 :
- w->writeContentsToFile(skyboxPrefix_+"bk.png");
- ce->yaw(Degree(90));
- iterateOverDirections_++;
- break;
-
- case 4 :
- w->writeContentsToFile(skyboxPrefix_+"rt.png");
- ce->yaw(Degree(90));
- ce->pitch(Degree(90));
- iterateOverDirections_++;
- break;
-
- case 5 :
- w->writeContentsToFile(skyboxPrefix_+"up.png");
- ce->pitch(Degree(180));
- iterateOverDirections_++;
- break;
-
- case 6 :
- w->writeContentsToFile(skyboxPrefix_+"dn.png");
- ce->pitch(Degree(90));
- iterateOverDirections_++;
- break;
-
- case 7 :
- camera->getOgreCamera()->setAspectRatio(aspectRatio_);
- camera->getOgreCamera()->setFOVy(fovy_);
- iterateOverDirections_++;
- case 8 :
- iterateOverDirections_ =0;
- takeScreenshot_ = false;
- CommandExecutor::execute("pause");
- CommandExecutor::execute("setGametypeStatus true");
- this->captionsRemoved_ = false;
- }
-
- }
- }
-
- void SkyboxGenerator::createSkybox( )
- {
- SkyboxGenerator::getInstance().takeScreenshot_ = true;
- CommandExecutor::execute("pause");
- }
-}
Copied: code/branches/presentation3/src/modules/designtools/SkyboxGenerator.cc (from rev 6989, code/branches/skybox2/src/modules/designtools/SkyboxGenerator.cc)
===================================================================
--- code/branches/presentation3/src/modules/designtools/SkyboxGenerator.cc (rev 0)
+++ code/branches/presentation3/src/modules/designtools/SkyboxGenerator.cc 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,159 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Gion-Andri Cantieni
+ * Co-authors:
+ * ...
+ *
+ */
+
+#include "SkyboxGenerator.h"
+
+#include <string>
+#include <cassert>
+#include <OgreRenderWindow.h>
+#include <OgreCamera.h>
+
+#include "core/ConsoleCommand.h"
+#include "core/CoreIncludes.h"
+#include "core/ConfigValueIncludes.h"
+#include "core/ScopedSingletonManager.h"
+#include "controllers/HumanController.h"
+#include "worldentities/CameraPosition.h"
+#include "worldentities/ControllableEntity.h"
+#include "core/GraphicsManager.h"
+#include "core/CommandExecutor.h"
+#include "graphics/Camera.h"
+
+
+
+namespace orxonox
+{
+
+ SetConsoleCommand(SkyboxGenerator, createSkybox, true);
+
+ ManageScopedSingleton(SkyboxGenerator, ScopeID::Graphics, false);
+
+ SkyboxGenerator::SkyboxGenerator() : iterateOverDirections_(0)
+ {
+ RegisterRootObject(SkyboxGenerator);
+
+ this->setConfigValues();
+ takeScreenshot_ = false;
+ this->captionsRemoved_ = false;
+ }
+
+ SkyboxGenerator::~SkyboxGenerator()
+ {
+
+ }
+
+ void SkyboxGenerator::setConfigValues( )
+ {
+ SetConfigValue(skyboxPrefix_, "SkyboxFile_");
+ }
+
+ void SkyboxGenerator::tick(float dt)
+ {
+ if( takeScreenshot_ == true )
+ {
+ if(!this->captionsRemoved_)
+ {
+ CommandExecutor::execute("setGametypeStatus false");
+ this->captionsRemoved_ = true;
+ return;
+ }
+
+ ControllableEntity* ce = HumanController::getLocalControllerSingleton()->getControllableEntity();
+ Camera* camera = ce->getCamera();
+ assert(ce);
+
+ Ogre::RenderWindow* w = GraphicsManager::getInstance().getRenderWindow();
+
+
+ switch (iterateOverDirections_)
+ {
+ case 0 :
+ fovy_ = camera->getOgreCamera()->getFOVy();
+ camera->getOgreCamera()->setFOVy(Degree(90));
+ aspectRatio_ = camera->getOgreCamera()->getAspectRatio();
+ camera->getOgreCamera()->setAspectRatio(1);
+ iterateOverDirections_++;
+ break;
+ case 1 :
+ w->writeContentsToFile(skyboxPrefix_+"fr.png");
+ ce->yaw(Degree(90));
+ iterateOverDirections_++;
+ break;
+
+ case 2 :
+ w->writeContentsToFile(skyboxPrefix_+"lf.png");
+ ce->yaw(Degree(90));
+ iterateOverDirections_++;
+ break;
+
+ case 3 :
+ w->writeContentsToFile(skyboxPrefix_+"bk.png");
+ ce->yaw(Degree(90));
+ iterateOverDirections_++;
+ break;
+
+ case 4 :
+ w->writeContentsToFile(skyboxPrefix_+"rt.png");
+ ce->yaw(Degree(90));
+ ce->pitch(Degree(90));
+ iterateOverDirections_++;
+ break;
+
+ case 5 :
+ w->writeContentsToFile(skyboxPrefix_+"up.png");
+ ce->pitch(Degree(180));
+ iterateOverDirections_++;
+ break;
+
+ case 6 :
+ w->writeContentsToFile(skyboxPrefix_+"dn.png");
+ ce->pitch(Degree(90));
+ iterateOverDirections_++;
+ break;
+
+ case 7 :
+ camera->getOgreCamera()->setAspectRatio(aspectRatio_);
+ camera->getOgreCamera()->setFOVy(fovy_);
+ iterateOverDirections_++;
+ case 8 :
+ iterateOverDirections_ =0;
+ takeScreenshot_ = false;
+ CommandExecutor::execute("pause");
+ CommandExecutor::execute("setGametypeStatus true");
+ this->captionsRemoved_ = false;
+ }
+
+ }
+ }
+
+ void SkyboxGenerator::createSkybox( )
+ {
+ SkyboxGenerator::getInstance().takeScreenshot_ = true;
+ CommandExecutor::execute("pause");
+ }
+}
Deleted: code/branches/presentation3/src/modules/designtools/SkyboxGenerator.h
===================================================================
--- code/branches/skybox2/src/modules/designtools/SkyboxGenerator.h 2010-05-27 19:04:21 UTC (rev 6989)
+++ code/branches/presentation3/src/modules/designtools/SkyboxGenerator.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -1,58 +0,0 @@
-/*
- * ORXONOX - the hottest 3D action shooter ever to exist
- * > www.orxonox.net <
- *
- *
- * License notice:
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Author:
- * Gion-Andri Cantieni
- * Co-authors:
- * ...
- *
- */
-
-
-#include "core/OrxonoxClass.h"
-#include "util/Singleton.h"
-#include "tools/interfaces/Tickable.h"
-#include <OgreMath.h>
-
-
-namespace orxonox
-{
- class SkyboxGenerator : public virtual OrxonoxClass, public Singleton<SkyboxGenerator>, public Tickable
- {
- friend class Singleton<SkyboxGenerator>;
-
- public:
- SkyboxGenerator();
- virtual ~SkyboxGenerator();
- static void createSkybox( );
- void setConfigValues( );
- void tick(float dt);
-
- private:
- static SkyboxGenerator* singletonPtr_s;
- std::string skyboxPrefix_;
- bool takeScreenshot_;
- int iterateOverDirections_;
- float aspectRatio_;
- Ogre::Radian fovy_;
- bool captionsRemoved_;
- };
-}
Copied: code/branches/presentation3/src/modules/designtools/SkyboxGenerator.h (from rev 6989, code/branches/skybox2/src/modules/designtools/SkyboxGenerator.h)
===================================================================
--- code/branches/presentation3/src/modules/designtools/SkyboxGenerator.h (rev 0)
+++ code/branches/presentation3/src/modules/designtools/SkyboxGenerator.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -0,0 +1,58 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Gion-Andri Cantieni
+ * Co-authors:
+ * ...
+ *
+ */
+
+
+#include "core/OrxonoxClass.h"
+#include "util/Singleton.h"
+#include "tools/interfaces/Tickable.h"
+#include <OgreMath.h>
+
+
+namespace orxonox
+{
+ class SkyboxGenerator : public virtual OrxonoxClass, public Singleton<SkyboxGenerator>, public Tickable
+ {
+ friend class Singleton<SkyboxGenerator>;
+
+ public:
+ SkyboxGenerator();
+ virtual ~SkyboxGenerator();
+ static void createSkybox( );
+ void setConfigValues( );
+ void tick(float dt);
+
+ private:
+ static SkyboxGenerator* singletonPtr_s;
+ std::string skyboxPrefix_;
+ bool takeScreenshot_;
+ int iterateOverDirections_;
+ float aspectRatio_;
+ Ogre::Radian fovy_;
+ bool captionsRemoved_;
+ };
+}
Modified: code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.cc
===================================================================
--- code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.cc 2010-05-27 20:26:19 UTC (rev 6993)
+++ code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.cc 2010-05-27 20:31:25 UTC (rev 6994)
@@ -29,6 +29,7 @@
#include "GametypeStatus.h"
#include "util/Convert.h"
+#include "core/ConsoleCommand.h"
#include "core/CoreIncludes.h"
#include "infos/GametypeInfo.h"
#include "infos/PlayerInfo.h"
@@ -37,8 +38,11 @@
namespace orxonox
{
- CreateFactory(GametypeStatus);
+ CreateFactory(GametypeStatus);
+ /*static*/ bool GametypeStatus::noCaption_s = false;
+ SetConsoleCommand(GametypeStatus, setGametypeStatus, true);
+
GametypeStatus::GametypeStatus(BaseObject* creator) : OverlayText(creator)
{
RegisterObject(GametypeStatus);
@@ -59,6 +63,12 @@
const GametypeInfo* gtinfo = this->owner_->getGametypeInfo();
ControllableEntity* ce = this->owner_->getControllableEntity();
+ if(GametypeStatus::noCaption_s) // No captions are displayed.
+ {
+ this->setCaption("");
+ return;
+ }
+
if (!gtinfo->hasStarted() && !gtinfo->isStartCountdownRunning())
{
if (!this->owner_->isReadyToSpawn())
@@ -87,4 +97,16 @@
this->owner_ = orxonox_cast<PlayerInfo*>(this->getOwner());
}
+
+ /**
+ @brief
+ Sets whether the gametype status is displayed.
+ @param bValue
+ If true captions are displayed, if false, not.
+ */
+ /*static*/ void GametypeStatus::setGametypeStatus(bool bValue)
+ {
+ GametypeStatus::noCaption_s = !bValue;
+ }
+
}
Modified: code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.h
===================================================================
--- code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.h 2010-05-27 20:26:19 UTC (rev 6993)
+++ code/branches/presentation3/src/modules/overlays/hud/GametypeStatus.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -45,8 +45,12 @@
virtual void tick(float dt);
virtual void changedOwner();
+ static void setGametypeStatus(bool bValue); //!< Toggles whether the gametype status is displayed.
+
private:
PlayerInfo* owner_;
+ static bool noCaption_s;
+
};
}
#endif /* _GametypeStatus_H__ */
Property changes on: code/branches/presentation3/src/orxonox/controllers/AIController.cc
___________________________________________________________________
Modified: svn:mergeinfo
- /code/branches/buildsystem/src/orxonox/controllers/AIController.cc:1874-2276,2278-2400
/code/branches/buildsystem2/src/orxonox/controllers/AIController.cc:2506-2658
/code/branches/buildsystem3/src/orxonox/controllers/AIController.cc:2662-2708
/code/branches/ceguilua/src/orxonox/controllers/AIController.cc:1802-1808
/code/branches/chat/src/orxonox/controllers/AIController.cc:6527-6797
/code/branches/chat2/src/orxonox/controllers/AIController.cc:6836-6910
/code/branches/console/src/orxonox/controllers/AIController.cc:5941-6104
/code/branches/core3/src/orxonox/controllers/AIController.cc:1572-1739
/code/branches/core4/src/orxonox/controllers/AIController.cc:3221-3224,3227,3234-3238,3242,3244-3250,3252-3254,3256,3259-3261,3264-3265,3268-3275,3277-3278,3280,3284-3285,3287,3289-3294,3305,3309-3310
/code/branches/core5/src/orxonox/controllers/AIController.cc:5768-5928,6009
/code/branches/gamestate/src/orxonox/controllers/AIController.cc:6430-6572,6621-6661
/code/branches/gamestates2/src/orxonox/controllers/AIController.cc:6594-6745
/code/branches/gametypes/src/orxonox/controllers/AIController.cc:2826-3031
/code/branches/gcc43/src/orxonox/controllers/AIController.cc:1580
/code/branches/gui/src/orxonox/controllers/AIController.cc:1635-1723,2795-2894
/code/branches/hudelements/src/orxonox/controllers/AIController.cc:6584-6941
/code/branches/ingamemenu/src/orxonox/controllers/AIController.cc:6000-6023
/code/branches/input/src/orxonox/controllers/AIController.cc:1629-1636
/code/branches/libraries/src/orxonox/controllers/AIController.cc:5612-5692
/code/branches/libraries2/src/orxonox/controllers/AIController.cc:5703-5737
/code/branches/lod/src/orxonox/controllers/AIController.cc:6586-6911
/code/branches/lodfinal/src/orxonox/controllers/AIController.cc:2372-2411
/code/branches/map/src/orxonox/controllers/AIController.cc:2801-3086,3089
/code/branches/menu/src/orxonox/controllers/AIController.cc:5941-6146,6148
/code/branches/miniprojects/src/orxonox/controllers/AIController.cc:2754-2824
/code/branches/netp2/src/orxonox/controllers/AIController.cc:2835-2988
/code/branches/netp3/src/orxonox/controllers/AIController.cc:2988-3082
/code/branches/netp6/src/orxonox/controllers/AIController.cc:3214-3302
/code/branches/network/src/orxonox/controllers/AIController.cc:2356
/code/branches/network64/src/orxonox/controllers/AIController.cc:2210-2355
/code/branches/objecthierarchy/src/orxonox/controllers/AIController.cc:1911-2085,2100,2110-2169
/code/branches/objecthierarchy2/src/orxonox/controllers/AIController.cc:2171-2479
/code/branches/overlay/src/orxonox/controllers/AIController.cc:2117-2385
/code/branches/particles/src/orxonox/controllers/AIController.cc:2829-3085
/code/branches/particles2/src/orxonox/controllers/AIController.cc:6050-6106,6109
/code/branches/pch/src/orxonox/controllers/AIController.cc:3113-3194
/code/branches/physics/src/orxonox/controllers/AIController.cc:1912-2055,2107-2439
/code/branches/physics_merge/src/orxonox/controllers/AIController.cc:2436-2457
/code/branches/pickup2/src/orxonox/controllers/AIController.cc:5942-6405
/code/branches/pickup3/src/orxonox/controllers/AIController.cc:6418-6523
/code/branches/pickup4/src/orxonox/controllers/AIController.cc:6594-6710
/code/branches/pickups/src/orxonox/controllers/AIController.cc:1926-2086,2127,2827-2915
/code/branches/pickups2/src/orxonox/controllers/AIController.cc:2107-2497,2915-3071
/code/branches/ppspickups1/src/orxonox/controllers/AIController.cc:6552-6708
/code/branches/ppspickups2/src/orxonox/controllers/AIController.cc:6527-6532,6554-6709
/code/branches/presentation/src/orxonox/controllers/AIController.cc:2369-2652,2654-2660
/code/branches/presentation2/src/orxonox/controllers/AIController.cc:6106-6416
/code/branches/questsystem/src/orxonox/controllers/AIController.cc:1894-2088
/code/branches/questsystem2/src/orxonox/controllers/AIController.cc:2107-2259
/code/branches/questsystem5/src/orxonox/controllers/AIController.cc:2776-2905
/code/branches/resource/src/orxonox/controllers/AIController.cc:3327-3366
/code/branches/resource2/src/orxonox/controllers/AIController.cc:3372-5694
/code/branches/rocket/src/orxonox/controllers/AIController.cc:6779-6950
/code/branches/script_trigger/src/orxonox/controllers/AIController.cc:1295-1953,1955
/code/branches/sound/src/orxonox/controllers/AIController.cc:2829-3010
/code/branches/sound3/src/orxonox/controllers/AIController.cc:5941-6102
/code/branches/steering/src/orxonox/controllers/AIController.cc:5949-6091
/code/branches/weapon/src/orxonox/controllers/AIController.cc:1925-2094
/code/branches/weapon2/src/orxonox/controllers/AIController.cc:2107-2488
/code/branches/weapons/src/orxonox/controllers/AIController.cc:2897-3051
/code/branches/weaponsystem/src/orxonox/controllers/AIController.cc:2742-2890
+ /code/branches/buildsystem/src/orxonox/controllers/AIController.cc:1874-2276,2278-2400
/code/branches/buildsystem2/src/orxonox/controllers/AIController.cc:2506-2658
/code/branches/buildsystem3/src/orxonox/controllers/AIController.cc:2662-2708
/code/branches/ceguilua/src/orxonox/controllers/AIController.cc:1802-1808
/code/branches/chat/src/orxonox/controllers/AIController.cc:6527-6797
/code/branches/chat2/src/orxonox/controllers/AIController.cc:6836-6910
/code/branches/console/src/orxonox/controllers/AIController.cc:5941-6104
/code/branches/core3/src/orxonox/controllers/AIController.cc:1572-1739
/code/branches/core4/src/orxonox/controllers/AIController.cc:3221-3224,3227,3234-3238,3242,3244-3250,3252-3254,3256,3259-3261,3264-3265,3268-3275,3277-3278,3280,3284-3285,3287,3289-3294,3305,3309-3310
/code/branches/core5/src/orxonox/controllers/AIController.cc:5768-5928,6009
/code/branches/gamestate/src/orxonox/controllers/AIController.cc:6430-6572,6621-6661
/code/branches/gamestates2/src/orxonox/controllers/AIController.cc:6594-6745
/code/branches/gametypes/src/orxonox/controllers/AIController.cc:2826-3031
/code/branches/gcc43/src/orxonox/controllers/AIController.cc:1580
/code/branches/gui/src/orxonox/controllers/AIController.cc:1635-1723,2795-2894
/code/branches/hudelements/src/orxonox/controllers/AIController.cc:6584-6941
/code/branches/ingamemenu/src/orxonox/controllers/AIController.cc:6000-6023
/code/branches/input/src/orxonox/controllers/AIController.cc:1629-1636
/code/branches/libraries/src/orxonox/controllers/AIController.cc:5612-5692
/code/branches/libraries2/src/orxonox/controllers/AIController.cc:5703-5737
/code/branches/lod/src/orxonox/controllers/AIController.cc:6586-6911
/code/branches/lodfinal/src/orxonox/controllers/AIController.cc:2372-2411
/code/branches/map/src/orxonox/controllers/AIController.cc:2801-3086,3089
/code/branches/menu/src/orxonox/controllers/AIController.cc:5941-6146,6148
/code/branches/miniprojects/src/orxonox/controllers/AIController.cc:2754-2824
/code/branches/netp2/src/orxonox/controllers/AIController.cc:2835-2988
/code/branches/netp3/src/orxonox/controllers/AIController.cc:2988-3082
/code/branches/netp6/src/orxonox/controllers/AIController.cc:3214-3302
/code/branches/network/src/orxonox/controllers/AIController.cc:2356
/code/branches/network64/src/orxonox/controllers/AIController.cc:2210-2355
/code/branches/objecthierarchy/src/orxonox/controllers/AIController.cc:1911-2085,2100,2110-2169
/code/branches/objecthierarchy2/src/orxonox/controllers/AIController.cc:2171-2479
/code/branches/overlay/src/orxonox/controllers/AIController.cc:2117-2385
/code/branches/particles/src/orxonox/controllers/AIController.cc:2829-3085
/code/branches/particles2/src/orxonox/controllers/AIController.cc:6050-6106,6109
/code/branches/pch/src/orxonox/controllers/AIController.cc:3113-3194
/code/branches/physics/src/orxonox/controllers/AIController.cc:1912-2055,2107-2439
/code/branches/physics_merge/src/orxonox/controllers/AIController.cc:2436-2457
/code/branches/pickup2/src/orxonox/controllers/AIController.cc:5942-6405
/code/branches/pickup3/src/orxonox/controllers/AIController.cc:6418-6523
/code/branches/pickup4/src/orxonox/controllers/AIController.cc:6594-6710
/code/branches/pickups/src/orxonox/controllers/AIController.cc:1926-2086,2127,2827-2915
/code/branches/pickups2/src/orxonox/controllers/AIController.cc:2107-2497,2915-3071
/code/branches/ppspickups1/src/orxonox/controllers/AIController.cc:6552-6708
/code/branches/ppspickups2/src/orxonox/controllers/AIController.cc:6527-6532,6554-6709
/code/branches/presentation/src/orxonox/controllers/AIController.cc:2369-2652,2654-2660
/code/branches/presentation2/src/orxonox/controllers/AIController.cc:6106-6416
/code/branches/questsystem/src/orxonox/controllers/AIController.cc:1894-2088
/code/branches/questsystem2/src/orxonox/controllers/AIController.cc:2107-2259
/code/branches/questsystem5/src/orxonox/controllers/AIController.cc:2776-2905
/code/branches/resource/src/orxonox/controllers/AIController.cc:3327-3366
/code/branches/resource2/src/orxonox/controllers/AIController.cc:3372-5694
/code/branches/rocket/src/orxonox/controllers/AIController.cc:6779-6950
/code/branches/script_trigger/src/orxonox/controllers/AIController.cc:1295-1953,1955
/code/branches/skybox2/src/orxonox/controllers/AIController.cc:6559-6989
/code/branches/sound/src/orxonox/controllers/AIController.cc:2829-3010
/code/branches/sound3/src/orxonox/controllers/AIController.cc:5941-6102
/code/branches/steering/src/orxonox/controllers/AIController.cc:5949-6091
/code/branches/weapon/src/orxonox/controllers/AIController.cc:1925-2094
/code/branches/weapon2/src/orxonox/controllers/AIController.cc:2107-2488
/code/branches/weapons/src/orxonox/controllers/AIController.cc:2897-3051
/code/branches/weaponsystem/src/orxonox/controllers/AIController.cc:2742-2890
Modified: code/branches/presentation3/src/orxonox/worldentities/ControllableEntity.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/ControllableEntity.h 2010-05-27 20:26:19 UTC (rev 6993)
+++ code/branches/presentation3/src/orxonox/worldentities/ControllableEntity.h 2010-05-27 20:31:25 UTC (rev 6994)
@@ -136,6 +136,8 @@
{ return this->bMouseLook_; }
inline float getMouseLookSpeed() const
{ return this->mouseLookSpeed_; }
+ inline CameraPosition* getCurrentCameraPosition()
+ { return this->currentCameraPosition_; }
inline Controller* getXMLController() const
{ return this->xmlcontroller_; }
More information about the Orxonox-commit
mailing list