ruby-ogre 0.0.2-x86-linux → 0.0.3-x86-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +80 -5
- data/Rakefile +26 -19
- data/bindings/ogre/interface/Rakefile +22 -0
- data/bindings/ogre/interface/ogre.i +3 -1
- data/bindings/ogre/interface/ogre_wrap.cpp +99671 -17485
- data/bindings/ogre/interface/ogre_wrap.o +0 -0
- data/bindings/ogrebites/interface/Rakefile +22 -0
- data/bindings/ogrebites/interface/ogrebites.i +1 -1
- data/bindings/ogrebites/interface/ogrebites_wrap.cpp +728 -728
- data/bindings/ogrebites/interface/ogrebites_wrap.h +2 -2
- data/bindings/ogrebites/interface/ogrebites_wrap.o +0 -0
- data/bindings/ois/interface/Rakefile +22 -0
- data/bindings/ois/interface/ois.i +1 -1
- data/bindings/ois/interface/ois_wrap.cpp +553 -553
- data/bindings/ois/interface/ois_wrap.h +2 -2
- data/bindings/ois/interface/ois_wrap.o +0 -0
- data/bindings/procedural/interface/Rakefile +22 -0
- data/bindings/procedural/interface/procedural.i +1 -1
- data/bindings/procedural/interface/procedural_wrap.cpp +1247 -1247
- data/bindings/procedural/interface/procedural_wrap.o +0 -0
- data/lib/{Ogre.so → ogre.so} +0 -0
- data/lib/ogre_config.rb +37 -0
- data/lib/ogrebites.so +0 -0
- data/lib/{OIS.so → ois.so} +0 -0
- data/lib/{Procedural.so → procedural.so} +0 -0
- data/lib/{Version.rb → version.rb} +1 -1
- data/sample/charactor/camera_mover.rb +184 -0
- data/sample/{Charactor → charactor}/plugins.cfg +0 -0
- data/sample/{Charactor → charactor}/resources.cfg +0 -0
- data/sample/{Charactor → charactor}/sinbad +1 -1
- data/sample/charactor/sinbad.rb +246 -0
- data/sample/{Charactor → charactor}/sinbad.win +1 -1
- data/sample/{Charactor/SinbadCharacter.rb → charactor/sinbad_character.rb} +125 -125
- data/sample/charactor/ui_listener.rb +65 -0
- metadata +22 -21
- data/bindings/ogre/interface/Makefile +0 -19
- data/bindings/ogrebites/interface/Makefile +0 -19
- data/bindings/ois/interface/Makefile +0 -19
- data/bindings/procedural/interface/Makefile +0 -19
- data/lib/OgreBites.so +0 -0
- data/lib/OgreConfig.rb +0 -37
- data/sample/Charactor/CameraMover.rb +0 -184
- data/sample/Charactor/Sinbad.rb +0 -246
- data/sample/Charactor/UiListener.rb +0 -65
@@ -0,0 +1,65 @@
|
|
1
|
+
#
|
2
|
+
# Key Listener
|
3
|
+
#
|
4
|
+
class KeyListener < Ois::KeyListener
|
5
|
+
def initialize(listener)
|
6
|
+
super()
|
7
|
+
@listener = listener
|
8
|
+
end
|
9
|
+
|
10
|
+
def key_pressed(keyEvent)
|
11
|
+
return @listener.key_pressed(keyEvent)
|
12
|
+
end
|
13
|
+
|
14
|
+
def key_released(keyEvent)
|
15
|
+
return @listener.key_released(keyEvent)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
#
|
20
|
+
# Mouse Listener
|
21
|
+
#
|
22
|
+
class MouseListener < Ois::MouseListener
|
23
|
+
def initialize(listener)
|
24
|
+
super()
|
25
|
+
@listener = listener
|
26
|
+
end
|
27
|
+
|
28
|
+
def mouse_moved(evt)
|
29
|
+
return @listener.mouse_moved(evt)
|
30
|
+
end
|
31
|
+
|
32
|
+
def mouse_pressed(mouseEvent, mouseButtonID)
|
33
|
+
return @listener.mouse_pressed(mouseEvent, mouseButtonID)
|
34
|
+
end
|
35
|
+
|
36
|
+
def mouse_released(mouseEvent, mouseButtonID)
|
37
|
+
return @listener.mouse_released(mouseEvent, mouseButtonID)
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
#
|
42
|
+
# Tray Listener
|
43
|
+
#
|
44
|
+
class TrayListener < Ogrebites::SdkTrayListener
|
45
|
+
def initialize(listener)
|
46
|
+
super()
|
47
|
+
@listener = listener
|
48
|
+
end
|
49
|
+
|
50
|
+
def button_hit(button)
|
51
|
+
@listener.button_hit(button)
|
52
|
+
end
|
53
|
+
|
54
|
+
def item_selected(menu)
|
55
|
+
@listener.item_selected(menu)
|
56
|
+
end
|
57
|
+
|
58
|
+
def yes_no_dialog_closed(name, bl)
|
59
|
+
@listener.yes_no_dialog_closed(name, bl)
|
60
|
+
end
|
61
|
+
|
62
|
+
def ok_dialog_closed(name)
|
63
|
+
@listener.ok_dialog_closed(name)
|
64
|
+
end
|
65
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-ogre
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: x86-linux
|
7
7
|
authors:
|
@@ -9,14 +9,15 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-09-
|
12
|
+
date: 2012-09-29 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: A ruby wrapper set of Ogre, OIS and Procedural.
|
15
15
|
email:
|
16
16
|
- abexsoft@gmail.com
|
17
17
|
executables: []
|
18
18
|
extensions: []
|
19
|
-
extra_rdoc_files:
|
19
|
+
extra_rdoc_files:
|
20
|
+
- bindings/ogre/interface/ogre_wrap.cpp
|
20
21
|
files:
|
21
22
|
- Rakefile
|
22
23
|
- README.md
|
@@ -275,7 +276,6 @@ files:
|
|
275
276
|
- bindings/ogre/interface/changeFileName
|
276
277
|
- bindings/ogre/interface/OgreCodec.i
|
277
278
|
- bindings/ogre/interface/OgreController.i
|
278
|
-
- bindings/ogre/interface/Makefile
|
279
279
|
- bindings/ogre/interface/OgreResourceGroupManager.i
|
280
280
|
- bindings/ogre/interface/OgreGpuProgramParams.i
|
281
281
|
- bindings/ogre/interface/OgrePass.i
|
@@ -291,6 +291,7 @@ files:
|
|
291
291
|
- bindings/ogre/interface/Terrain/OgreTerrain.i
|
292
292
|
- bindings/ogre/interface/OgreVector2.i
|
293
293
|
- bindings/ogre/interface/OgreGpuProgramUsage.i
|
294
|
+
- bindings/ogre/interface/Rakefile
|
294
295
|
- bindings/ogre/interface/OgreCompositorInstance.i
|
295
296
|
- bindings/ogre/interface/OgreLog.i
|
296
297
|
- bindings/ogre/interface/OgreSkeletonSerializer.i
|
@@ -357,8 +358,8 @@ files:
|
|
357
358
|
- bindings/ogrebites/interface/SdkCameraMan.i
|
358
359
|
- bindings/ogrebites/interface/ogrebites_wrap.cpp
|
359
360
|
- bindings/ogrebites/interface/ogrebites.i
|
360
|
-
- bindings/ogrebites/interface/Makefile
|
361
361
|
- bindings/ogrebites/interface/SdkTrays.i
|
362
|
+
- bindings/ogrebites/interface/Rakefile
|
362
363
|
- bindings/ogrebites/interface/ogrebites_wrap.h
|
363
364
|
- bindings/ois/interface/OIS_Event.i
|
364
365
|
- bindings/ois/interface/ois_all.i
|
@@ -373,7 +374,7 @@ files:
|
|
373
374
|
- bindings/ois/interface/OIS_Effect.i
|
374
375
|
- bindings/ois/interface/OIS_Mouse.i
|
375
376
|
- bindings/ois/interface/OIS_Prereqs.i
|
376
|
-
- bindings/ois/interface/
|
377
|
+
- bindings/ois/interface/Rakefile
|
377
378
|
- bindings/ois/interface/OIS_Exception.i
|
378
379
|
- bindings/ois/interface/OIS_InputManager.i
|
379
380
|
- bindings/ois/interface/ois.i
|
@@ -401,8 +402,8 @@ files:
|
|
401
402
|
- bindings/procedural/interface/procedural_wrap.cpp
|
402
403
|
- bindings/procedural/interface/ProceduralTriangulator.i
|
403
404
|
- bindings/procedural/interface/ProceduralHeader.i
|
404
|
-
- bindings/procedural/interface/Makefile
|
405
405
|
- bindings/procedural/interface/ProceduralTorusKnotGenerator.i
|
406
|
+
- bindings/procedural/interface/Rakefile
|
406
407
|
- bindings/procedural/interface/ProceduralRoot.i
|
407
408
|
- bindings/procedural/interface/ProceduralUtils.i
|
408
409
|
- bindings/procedural/interface/ProceduralSphereGenerator.i
|
@@ -412,12 +413,12 @@ files:
|
|
412
413
|
- bindings/procedural/interface/ProceduralCapsuleGenerator.i
|
413
414
|
- bindings/procedural/interface/ProceduralTorusGenerator.i
|
414
415
|
- bindings/procedural/interface/ProceduralCylinderGenerator.i
|
415
|
-
- lib/
|
416
|
-
- lib/
|
417
|
-
- lib/
|
418
|
-
- lib/
|
419
|
-
- lib/
|
420
|
-
- lib/
|
416
|
+
- lib/version.rb
|
417
|
+
- lib/ois.so
|
418
|
+
- lib/ogrebites.so
|
419
|
+
- lib/ogre.so
|
420
|
+
- lib/procedural.so
|
421
|
+
- lib/ogre_config.rb
|
421
422
|
- deps/lib/libOIS.so
|
422
423
|
- deps/lib/libOIS-1.3.0.so
|
423
424
|
- deps/lib/libOgreRTShaderSystem.so
|
@@ -1616,14 +1617,14 @@ files:
|
|
1616
1617
|
- deps/share/OGRE/media/thumbnails/thumb_smoke.png
|
1617
1618
|
- deps/share/OGRE/media/thumbnails/thumb_skybox.png
|
1618
1619
|
- deps/share/OGRE/media/thumbnails/thumb_shadows.png
|
1619
|
-
- sample/
|
1620
|
-
- sample/
|
1621
|
-
- sample/
|
1622
|
-
- sample/
|
1623
|
-
- sample/
|
1624
|
-
- sample/
|
1625
|
-
- sample/
|
1626
|
-
- sample/
|
1620
|
+
- sample/charactor/sinbad.rb
|
1621
|
+
- sample/charactor/ui_listener.rb
|
1622
|
+
- sample/charactor/sinbad_character.rb
|
1623
|
+
- sample/charactor/camera_mover.rb
|
1624
|
+
- sample/charactor/sinbad
|
1625
|
+
- sample/charactor/sinbad.win
|
1626
|
+
- sample/charactor/resources.cfg
|
1627
|
+
- sample/charactor/plugins.cfg
|
1627
1628
|
homepage: https://github.com/abexsoft/ruby-ogre
|
1628
1629
|
licenses: []
|
1629
1630
|
post_install_message:
|
@@ -1,19 +0,0 @@
|
|
1
|
-
.PHONY: clean
|
2
|
-
|
3
|
-
SWIG = swig
|
4
|
-
DEPS_DIR = ../../../deps/
|
5
|
-
|
6
|
-
include ../../../deps/env.mk
|
7
|
-
|
8
|
-
SWIGFLAGS = -ruby -c++ $(OGRE_INC) -I../src
|
9
|
-
RUBY = ruby
|
10
|
-
|
11
|
-
TARGET = ogre_wrap.cpp
|
12
|
-
|
13
|
-
all: $(TARGET)
|
14
|
-
|
15
|
-
$(TARGET): ogre.i
|
16
|
-
$(SWIG) $(SWIGFLAGS) -o $@ $<
|
17
|
-
|
18
|
-
clean:
|
19
|
-
@rm -f $(TARGET)
|
@@ -1,19 +0,0 @@
|
|
1
|
-
.PHONY: clean
|
2
|
-
|
3
|
-
SWIG = swig
|
4
|
-
DEPS_DIR = ../../../deps/
|
5
|
-
|
6
|
-
include ../../../deps/env.mk
|
7
|
-
|
8
|
-
SWIGFLAGS = -ruby -c++ $(OIS_INC) $(OGRE_INC)
|
9
|
-
RUBY = ruby
|
10
|
-
|
11
|
-
TARGET = ogrebites_wrap.cpp
|
12
|
-
|
13
|
-
all: $(TARGET)
|
14
|
-
|
15
|
-
$(TARGET): ogrebites.i
|
16
|
-
$(SWIG) $(SWIGFLAGS) -o $@ $<
|
17
|
-
|
18
|
-
clean:
|
19
|
-
@rm -f $(TARGET)
|
@@ -1,19 +0,0 @@
|
|
1
|
-
.PHONY: clean
|
2
|
-
|
3
|
-
SWIG = swig
|
4
|
-
DEPS_DIR = ../../../deps/
|
5
|
-
|
6
|
-
include ../../../deps/env.mk
|
7
|
-
|
8
|
-
SWIGFLAGS = -ruby -c++ $(OIS_INC)
|
9
|
-
RUBY = ruby
|
10
|
-
|
11
|
-
TARGET = ois_wrap.cpp
|
12
|
-
|
13
|
-
all: $(TARGET)
|
14
|
-
|
15
|
-
$(TARGET): ois.i
|
16
|
-
$(SWIG) $(SWIGFLAGS) -o $@ $<
|
17
|
-
|
18
|
-
clean:
|
19
|
-
@rm -f $(TARGET)
|
@@ -1,19 +0,0 @@
|
|
1
|
-
.PHONY: clean
|
2
|
-
|
3
|
-
SWIG = swig
|
4
|
-
DEPS_DIR = ../../../deps/
|
5
|
-
|
6
|
-
include ../../../deps/env.mk
|
7
|
-
|
8
|
-
SWIGFLAGS = -ruby -c++ $(PROC_INC) $(OGRE_INC)
|
9
|
-
RUBY = ruby
|
10
|
-
|
11
|
-
TARGET = procedural_wrap.cpp
|
12
|
-
|
13
|
-
all: $(TARGET)
|
14
|
-
|
15
|
-
$(TARGET): procedural.i
|
16
|
-
$(SWIG) $(SWIGFLAGS) -o $@ $<
|
17
|
-
|
18
|
-
clean:
|
19
|
-
@rm -f $(TARGET)
|
data/lib/OgreBites.so
DELETED
Binary file
|
data/lib/OgreConfig.rb
DELETED
@@ -1,37 +0,0 @@
|
|
1
|
-
class OgreConfig
|
2
|
-
def self.getTopDir
|
3
|
-
File.dirname(File.dirname(File.expand_path(__FILE__)))
|
4
|
-
end
|
5
|
-
|
6
|
-
def self.getLdLibraryPath
|
7
|
-
"#{getTopDir()}/deps/lib"
|
8
|
-
end
|
9
|
-
|
10
|
-
def self.getDepsLibPath
|
11
|
-
"#{getTopDir()}/deps/lib"
|
12
|
-
end
|
13
|
-
|
14
|
-
def self.getDepsIncPath
|
15
|
-
"#{getTopDir()}/deps/include"
|
16
|
-
end
|
17
|
-
|
18
|
-
def self.getIncFlags
|
19
|
-
"-I#{getTopDir()}/deps/include/OGRE/ " +
|
20
|
-
"-I#{getTopDir()}/deps/include/OGRE/GLX/ " +
|
21
|
-
"-I#{getTopDir()}/deps/include/OGRE/Paging/ " +
|
22
|
-
"-I#{getTopDir()}/deps/include/OGRE/RTShaderSystem/ " +
|
23
|
-
"-I#{getTopDir()}/deps/include/OGRE/Terrain "
|
24
|
-
end
|
25
|
-
|
26
|
-
def self.getLib
|
27
|
-
File.dirname(File.expand_path(__FILE__))
|
28
|
-
end
|
29
|
-
|
30
|
-
def self.getPluginFolder
|
31
|
-
"#{getTopDir()}/deps/lib/OGRE"
|
32
|
-
end
|
33
|
-
|
34
|
-
def self.getResourceFolder
|
35
|
-
"#{getTopDir()}/deps/share/OGRE/media/"
|
36
|
-
end
|
37
|
-
end
|
@@ -1,184 +0,0 @@
|
|
1
|
-
class CameraMover
|
2
|
-
CS_FREELOOK = 0
|
3
|
-
CS_ORBIT = 1
|
4
|
-
CS_MANUAL = 2
|
5
|
-
CS_TPS = 3
|
6
|
-
|
7
|
-
CAM_HEIGHT = 5.0
|
8
|
-
|
9
|
-
attr_accessor :height
|
10
|
-
attr_accessor :cameraPivot
|
11
|
-
attr_accessor :camera
|
12
|
-
|
13
|
-
def initialize(cam)
|
14
|
-
@camera = cam
|
15
|
-
@camera.setPosition(0, 0, 0)
|
16
|
-
@camera.setNearClipDistance(0.1)
|
17
|
-
|
18
|
-
@style = CS_FREELOOK
|
19
|
-
|
20
|
-
# CS_FREELOOK, CS_ORBIT, CS_MANUAL
|
21
|
-
@sdkCameraMan = OgreBites::SdkCameraMan.new(@camera)
|
22
|
-
@evtFrame = Ogre::FrameEvent.new
|
23
|
-
|
24
|
-
# CS_TPS
|
25
|
-
@height = CAM_HEIGHT
|
26
|
-
@cameraPivot = cam.getSceneManager().getRootSceneNode().createChildSceneNode()
|
27
|
-
@cameraGoal = @cameraPivot.createChildSceneNode(Ogre::Vector3.new(0, 0, 5))
|
28
|
-
|
29
|
-
@cameraPivot.setFixedYawAxis(true)
|
30
|
-
@cameraGoal.setFixedYawAxis(true)
|
31
|
-
|
32
|
-
@pivotPitch = 0
|
33
|
-
|
34
|
-
end
|
35
|
-
|
36
|
-
def setStyle(style)
|
37
|
-
@style = style
|
38
|
-
case @style
|
39
|
-
when CS_FREELOOK
|
40
|
-
@sdkCameraMan.setStyle(OgreBites::CS_FREELOOK)
|
41
|
-
when CS_ORBIT
|
42
|
-
@sdkCameraMan.setStyle(OgreBites::CS_ORBIT)
|
43
|
-
else # CS_MANUAL, CS_TPS
|
44
|
-
@sdkCameraMan.setStyle(OgreBites::CS_MANUAL)
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
def setTarget(target)
|
49
|
-
@target = target
|
50
|
-
if @style == CS_TPS
|
51
|
-
@camera.setAutoTracking(false)
|
52
|
-
@camera.moveRelative(Ogre::Vector3.new(0, 0, 0))
|
53
|
-
updateCamera(1.0)
|
54
|
-
else
|
55
|
-
@sdkCameraMan.setTarget(target)
|
56
|
-
end
|
57
|
-
end
|
58
|
-
|
59
|
-
def setPosition(pos)
|
60
|
-
@camera.setPosition(pos) if @style == CS_FREELOOK
|
61
|
-
end
|
62
|
-
|
63
|
-
def lookAt(pos)
|
64
|
-
@camera.lookAt(pos) if @style == CS_FREELOOK
|
65
|
-
end
|
66
|
-
|
67
|
-
def setYawPitchDist(yaw, pitch, dist)
|
68
|
-
@sdkCameraMan.setYawPitchDist(yaw, pitch, dist) if @style == CS_ORBIT
|
69
|
-
end
|
70
|
-
|
71
|
-
def moveForward(bl)
|
72
|
-
evt = OIS::KeyEvent.new(nil, OIS::KC_W, 0)
|
73
|
-
if bl
|
74
|
-
@sdkCameraMan.injectKeyDown(evt)
|
75
|
-
else
|
76
|
-
@sdkCameraMan.injectKeyUp(evt)
|
77
|
-
end
|
78
|
-
end
|
79
|
-
|
80
|
-
def moveBackward(bl)
|
81
|
-
evt = OIS::KeyEvent.new(nil, OIS::KC_S, 0)
|
82
|
-
if bl
|
83
|
-
@sdkCameraMan.injectKeyDown(evt)
|
84
|
-
else
|
85
|
-
@sdkCameraMan.injectKeyUp(evt)
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
|
-
def moveLeft(bl)
|
90
|
-
evt = OIS::KeyEvent.new(nil, OIS::KC_A, 0)
|
91
|
-
if bl
|
92
|
-
@sdkCameraMan.injectKeyDown(evt)
|
93
|
-
else
|
94
|
-
@sdkCameraMan.injectKeyUp(evt)
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
def moveRight(bl)
|
99
|
-
evt = OIS::KeyEvent.new(nil, OIS::KC_D, 0)
|
100
|
-
if bl
|
101
|
-
@sdkCameraMan.injectKeyDown(evt)
|
102
|
-
else
|
103
|
-
@sdkCameraMan.injectKeyUp(evt)
|
104
|
-
end
|
105
|
-
end
|
106
|
-
|
107
|
-
|
108
|
-
def update(delta)
|
109
|
-
if (@style == CS_TPS)
|
110
|
-
updateCamera(delta)
|
111
|
-
else
|
112
|
-
@evtFrame.timeSinceLastFrame = delta
|
113
|
-
@sdkCameraMan.frameRenderingQueued(@evtFrame)
|
114
|
-
end
|
115
|
-
end
|
116
|
-
|
117
|
-
#
|
118
|
-
# This method moves this camera position to the goal position smoothly.
|
119
|
-
# In general, should be called in the frameRenderingQueued handler.
|
120
|
-
#
|
121
|
-
def updateCamera(deltaTime)
|
122
|
-
# place the camera pivot roughly at the character's shoulder
|
123
|
-
@cameraPivot.setPosition(@target.getPosition() + Ogre::Vector3.UNIT_Y * @height)
|
124
|
-
# move the camera smoothly to the goal
|
125
|
-
goalOffset = @cameraGoal._getDerivedPosition() - @camera.getPosition()
|
126
|
-
@camera.move(goalOffset * deltaTime * 9.0)
|
127
|
-
# always look at the pivot
|
128
|
-
@camera.lookAt(@cameraPivot._getDerivedPosition())
|
129
|
-
end
|
130
|
-
|
131
|
-
def mouseMoved(evt)
|
132
|
-
if @style == CS_TPS
|
133
|
-
updateCameraGoal(-0.05 * evt.state.X.rel,
|
134
|
-
-0.05 * evt.state.Y.rel,
|
135
|
-
-0.0005 * evt.state.Z.rel)
|
136
|
-
else
|
137
|
-
@sdkCameraMan.injectMouseMove(evt)
|
138
|
-
end
|
139
|
-
return true
|
140
|
-
end
|
141
|
-
|
142
|
-
#
|
143
|
-
# This method updates the goal position, which this camera should be placed finally.
|
144
|
-
# In general, should be called when the mouse is moved.
|
145
|
-
# *deltaYaw*::_float_, degree value.
|
146
|
-
# *deltaPitch*::_float_, degree value.
|
147
|
-
# *deltaZoom*::_float_, zoom
|
148
|
-
#
|
149
|
-
def updateCameraGoal(deltaYaw, deltaPitch, deltaZoom)
|
150
|
-
@cameraPivot.yaw(Ogre::Radian.new(Ogre::Degree.new(deltaYaw)), Ogre::Node::TS_WORLD);
|
151
|
-
@cameraPivot.pitch(Ogre::Radian.new(Ogre::Degree.new(deltaPitch)), Ogre::Node::TS_LOCAL)
|
152
|
-
=begin
|
153
|
-
# bound the pitch
|
154
|
-
if (!(@pivotPitch + deltaPitch > 25 && deltaPitch > 0) &&
|
155
|
-
!(@pivotPitch + deltaPitch < -60 && deltaPitch < 0))
|
156
|
-
|
157
|
-
@cameraPivot.pitch(Ogre::Degree.new(deltaPitch).valueRadians, Ogre::Node::TS_LOCAL)
|
158
|
-
@pivotPitch += deltaPitch;
|
159
|
-
end
|
160
|
-
=end
|
161
|
-
dist = @cameraGoal._getDerivedPosition().distance(@cameraPivot._getDerivedPosition())
|
162
|
-
distChange = deltaZoom * dist;
|
163
|
-
|
164
|
-
# puts "dist: #{dist}:#{distChange}"
|
165
|
-
|
166
|
-
# bound the zoom
|
167
|
-
if (!(dist + distChange < 8 && distChange < 0) &&
|
168
|
-
!(dist + distChange > 25 && distChange > 0))
|
169
|
-
|
170
|
-
@cameraGoal.translate(Ogre::Vector3.new(0, 0, distChange), Ogre::Node::TS_LOCAL)
|
171
|
-
end
|
172
|
-
end
|
173
|
-
|
174
|
-
def mousePressed(mouseEvent, mouseButtonID)
|
175
|
-
@sdkCameraMan.injectMouseDown(mouseEvent, mouseButtonID) if @style == CS_ORBIT
|
176
|
-
return true
|
177
|
-
end
|
178
|
-
|
179
|
-
def mouseReleased(mouseEvent, mouseButtonID)
|
180
|
-
@sdkCameraMan.injectMouseUp(mouseEvent, mouseButtonID) if @style == CS_ORBIT
|
181
|
-
return true
|
182
|
-
end
|
183
|
-
|
184
|
-
end
|