shattered_ruby 0.5.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. data/bin/console +4 -0
  2. data/bin/destroy +9 -0
  3. data/bin/generate +7 -0
  4. data/bin/runner +9 -0
  5. data/bin/shatter +22 -0
  6. data/lib/commands/console.rb +23 -0
  7. data/lib/game_loader.rb +118 -0
  8. data/lib/rails_generator/base.rb +203 -0
  9. data/lib/rails_generator/commands.rb +519 -0
  10. data/lib/rails_generator/generators/applications/shattered_app/USAGE +10 -0
  11. data/lib/rails_generator/generators/applications/shattered_app/shattered_app_generator.rb +103 -0
  12. data/lib/rails_generator/generators/components/actor/actor_generator.rb +22 -0
  13. data/lib/rails_generator/generators/components/actor/templates/actor.rb +0 -0
  14. data/lib/rails_generator/generators/components/model/USAGE +17 -0
  15. data/lib/rails_generator/generators/components/model/model_generator.rb +22 -0
  16. data/lib/rails_generator/generators/components/model/templates/fixtures.yml +5 -0
  17. data/lib/rails_generator/generators/components/model/templates/model.rb +2 -0
  18. data/lib/rails_generator/generators/components/model/templates/unit_test.rb +11 -0
  19. data/lib/rails_generator/generators/components/state/USAGE +30 -0
  20. data/lib/rails_generator/generators/components/state/state_generator.rb +19 -0
  21. data/lib/rails_generator/generators/components/state/templates/state.rb +31 -0
  22. data/lib/rails_generator/generators/components/view/USAGE +30 -0
  23. data/lib/rails_generator/generators/components/view/templates/material +4 -0
  24. data/lib/rails_generator/generators/components/view/templates/view.rb +9 -0
  25. data/lib/rails_generator/generators/components/view/view_generator.rb +28 -0
  26. data/lib/rails_generator/lookup.rb +209 -0
  27. data/lib/rails_generator/manifest.rb +53 -0
  28. data/lib/rails_generator/options.rb +143 -0
  29. data/lib/rails_generator/scripts/destroy.rb +7 -0
  30. data/lib/rails_generator/scripts/generate.rb +7 -0
  31. data/lib/rails_generator/scripts/update.rb +12 -0
  32. data/lib/rails_generator/scripts.rb +83 -0
  33. data/lib/rails_generator/simple_logger.rb +46 -0
  34. data/lib/rails_generator/spec.rb +44 -0
  35. data/lib/rails_generator.rb +43 -0
  36. data/lib/shatter.rb +7 -0
  37. data/lib/tasks/documentation.rake +46 -0
  38. data/lib/tasks/framework.rake +80 -0
  39. data/lib/tasks/log.rake +9 -0
  40. data/lib/tasks/misc.rake +4 -0
  41. data/lib/tasks/pre_namespace_aliases.rake +28 -0
  42. data/lib/tasks/shattered.rb +6 -0
  43. data/lib/tasks/statistics.rake +17 -0
  44. data/lib/tasks/testing.rake +102 -0
  45. data/lib/templates/MIT-LICENSE +20 -0
  46. data/lib/templates/README +35 -0
  47. data/lib/templates/Rakefile +11 -0
  48. data/lib/templates/configs/boot.rb +35 -0
  49. data/lib/templates/configs/empty.log +0 -0
  50. data/lib/templates/configs/ogre.cfg +4 -0
  51. data/lib/templates/configs/ogre_plugins.windows.cfg +14 -0
  52. data/lib/templates/configs/runner.rb +5 -0
  53. data/lib/templates/doc/README_FOR_APP +2 -0
  54. data/lib/templates/environments/environment.rb +10 -0
  55. data/lib/templates/media/basic.rmaterial +18 -0
  56. data/lib/templates/media/default.mesh +0 -0
  57. data/lib/templates/media/default.png +0 -0
  58. data/lib/templates/media/offset_map.rmaterial +117 -0
  59. data/lib/templates/test/test_helper.rb +5 -0
  60. metadata +153 -0
@@ -0,0 +1,10 @@
1
+
2
+ game = {}
3
+
4
+ # Replace this with your state name, an example would be :main_menu
5
+ # if you had a MainMenuState
6
+ game[:start_state] = :main_menu
7
+
8
+ game[:media] = ["app/media"]
9
+
10
+ Shatter::GameLoader.instance.environment=game
@@ -0,0 +1,18 @@
1
+ // This is an example rmaterial, a basic single textured, uniformly lit mesh.
2
+ // The only argument is texture, which defaults to <material_name>.png
3
+
4
+ <% @texture ||= "#{name}.png" %>
5
+ material <%= name %>
6
+ {
7
+ technique
8
+ {
9
+ pass
10
+ {
11
+ lighting off
12
+ texture_unit
13
+ {
14
+ texture <%= texture %>
15
+ }
16
+ }
17
+ }
18
+ }
Binary file
Binary file
@@ -0,0 +1,117 @@
1
+ // Offset mapping options:
2
+ // texture: defaults to material_name.png.
3
+ // This specifies which texture (in the form of a file such as wall.png) will be
4
+ // applied to the material.
5
+ //
6
+ // offset_map: defaults to texture_filename_normals.texture_extension
7
+ // (example :texture => "wall.png" offset_map will be "wall_normals.png")
8
+ // The normal map (defined in tangent space) for the object( to simulate detail ).
9
+ //
10
+ // generate_tangents: defaults to true.
11
+ // This will generate the tangents for the loaded mesh, but if you do not move the
12
+ // mesh throughout the scene, there is no need.
13
+ //
14
+
15
+ <% @texture ||= "#{name}.png" %>
16
+ <% tangent_space = @generate_tangents %>
17
+ <% tangent_space = true if @generate_tangents.nil? %>
18
+ <% @offset_map ||= "#{texture.split('.')[0]}_normals.#{texture.split('.')[1]}"%>
19
+
20
+ material <%= name %>
21
+ {
22
+
23
+ // This is the preferred technique which uses both vertex and
24
+ // fragment programs, supports coloured lights
25
+ technique
26
+ {
27
+ // do the lighting and bump mapping with parallax pass
28
+ // NB we don't do decal texture here because this is repeated per light
29
+ pass
30
+ {
31
+ // Vertex program reference
32
+ vertex_program_ref OffsetMappingVP
33
+ {
34
+ param_named_auto lightPosition light_position_object_space 0
35
+ param_named_auto eyePosition camera_position_object_space
36
+ param_named_auto worldViewProj worldviewproj_matrix
37
+ }
38
+
39
+ // Fragment program
40
+ fragment_program_ref OffsetMappingFP
41
+ {
42
+ param_named_auto lightDiffuse light_diffuse_colour 0
43
+ param_named_auto lightSpecular light_specular_colour 0
44
+ // Parallax Height scale and bias
45
+ param_named scaleBias float4 0.04 -0.02 1 0
46
+ }
47
+
48
+ // Normal + height(alpha) map
49
+ texture_unit
50
+ {
51
+ texture <%= offset_map %>
52
+ }
53
+
54
+ // Base diffuse texture map
55
+ texture_unit
56
+ {
57
+ texture <%= texture %>
58
+ }
59
+ }
60
+ }
61
+
62
+
63
+ // This is the preferred technique which uses both vertex and
64
+ // fragment programs, supports coloured lights
65
+ technique
66
+ {
67
+ // do the lighting and bump mapping with parallax pass
68
+ // NB we don't do decal texture here because this is repeated per light
69
+ pass
70
+ {
71
+
72
+ // Vertex program reference
73
+ vertex_program_ref OffsetMappingVP
74
+ {
75
+ param_named_auto lightPosition light_position_object_space 0
76
+ param_named_auto eyePosition camera_position_object_space
77
+ param_named_auto worldViewProj worldviewproj_matrix
78
+ }
79
+
80
+ // Fragment program
81
+ fragment_program_ref OffsetMappingPS
82
+ {
83
+ param_indexed_auto 0 light_diffuse_colour 0
84
+ param_indexed_auto 1 light_specular_colour 0
85
+ // Parallax Height scale and bias
86
+ param_indexed 2 float4 0.04 -0.02 1 0
87
+ }
88
+
89
+ // Normal + height(alpha) map
90
+ texture_unit
91
+ {
92
+ texture <%= offset_map %>
93
+ }
94
+
95
+ // Base diffuse texture map
96
+ texture_unit
97
+ {
98
+ texture <%= texture %>
99
+ }
100
+ }
101
+ }
102
+
103
+ // Simple no-shader fallback
104
+ technique
105
+ {
106
+ pass
107
+ {
108
+ // Base diffuse texture map
109
+ texture_unit
110
+ {
111
+ texture <%= texture %>
112
+ }
113
+ }
114
+ }
115
+
116
+ }
117
+
@@ -0,0 +1,5 @@
1
+ require 'test/unit'
2
+
3
+ require(File.join(File.dirname(__FILE__), '..', 'config', 'boot'))
4
+
5
+ Shatter::GameLoader.instance.load_all_sources(SHATTERED_ROOT)
metadata ADDED
@@ -0,0 +1,153 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.9.2
3
+ specification_version: 1
4
+ name: shattered_ruby
5
+ version: !ruby/object:Gem::Version
6
+ version: 0.5.0.2
7
+ date: 2007-07-14 00:00:00 -05:00
8
+ summary: "Shattered: The main package tieing together controller, view, and model"
9
+ require_paths:
10
+ - lib
11
+ email:
12
+ homepage: http://www.hastilymade.com
13
+ rubyforge_project:
14
+ description: Shattered is a Model View Control framework for creating 3d games. It uses Ogre, and the parts of rails (code and philosophy) to define a general use framework that is easy to work with.
15
+ autorequire: shatter
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: "true"
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
24
+ version:
25
+ platform: ruby
26
+ signing_key:
27
+ cert_chain:
28
+ post_install_message:
29
+ authors: []
30
+
31
+ files:
32
+ - bin/console
33
+ - bin/destroy
34
+ - bin/generate
35
+ - bin/runner
36
+ - bin/shatter
37
+ - lib/commands
38
+ - lib/commands/console.rb
39
+ - lib/game_loader.rb
40
+ - lib/rails_generator
41
+ - lib/rails_generator/base.rb
42
+ - lib/rails_generator/commands.rb
43
+ - lib/rails_generator/generators
44
+ - lib/rails_generator/generators/applications
45
+ - lib/rails_generator/generators/applications/shattered_app
46
+ - lib/rails_generator/generators/applications/shattered_app/shattered_app_generator.rb
47
+ - lib/rails_generator/generators/applications/shattered_app/USAGE
48
+ - lib/rails_generator/generators/components
49
+ - lib/rails_generator/generators/components/actor
50
+ - lib/rails_generator/generators/components/actor/actor_generator.rb
51
+ - lib/rails_generator/generators/components/actor/templates
52
+ - lib/rails_generator/generators/components/actor/templates/actor.rb
53
+ - lib/rails_generator/generators/components/model
54
+ - lib/rails_generator/generators/components/model/model_generator.rb
55
+ - lib/rails_generator/generators/components/model/templates
56
+ - lib/rails_generator/generators/components/model/templates/fixtures.yml
57
+ - lib/rails_generator/generators/components/model/templates/model.rb
58
+ - lib/rails_generator/generators/components/model/templates/unit_test.rb
59
+ - lib/rails_generator/generators/components/model/USAGE
60
+ - lib/rails_generator/generators/components/state
61
+ - lib/rails_generator/generators/components/state/state_generator.rb
62
+ - lib/rails_generator/generators/components/state/templates
63
+ - lib/rails_generator/generators/components/state/templates/state.rb
64
+ - lib/rails_generator/generators/components/state/USAGE
65
+ - lib/rails_generator/generators/components/view
66
+ - lib/rails_generator/generators/components/view/templates
67
+ - lib/rails_generator/generators/components/view/templates/material
68
+ - lib/rails_generator/generators/components/view/templates/view.rb
69
+ - lib/rails_generator/generators/components/view/USAGE
70
+ - lib/rails_generator/generators/components/view/view_generator.rb
71
+ - lib/rails_generator/lookup.rb
72
+ - lib/rails_generator/manifest.rb
73
+ - lib/rails_generator/options.rb
74
+ - lib/rails_generator/scripts
75
+ - lib/rails_generator/scripts/destroy.rb
76
+ - lib/rails_generator/scripts/generate.rb
77
+ - lib/rails_generator/scripts/update.rb
78
+ - lib/rails_generator/scripts.rb
79
+ - lib/rails_generator/simple_logger.rb
80
+ - lib/rails_generator/spec.rb
81
+ - lib/rails_generator.rb
82
+ - lib/shatter.rb
83
+ - lib/tasks
84
+ - lib/tasks/documentation.rake
85
+ - lib/tasks/framework.rake
86
+ - lib/tasks/log.rake
87
+ - lib/tasks/misc.rake
88
+ - lib/tasks/pre_namespace_aliases.rake
89
+ - lib/tasks/shattered.rb
90
+ - lib/tasks/statistics.rake
91
+ - lib/tasks/testing.rake
92
+ - lib/templates
93
+ - lib/templates/configs
94
+ - lib/templates/configs/boot.rb
95
+ - lib/templates/configs/empty.log
96
+ - lib/templates/configs/ogre.cfg
97
+ - lib/templates/configs/ogre_plugins.windows.cfg
98
+ - lib/templates/configs/runner.rb
99
+ - lib/templates/doc
100
+ - lib/templates/doc/README_FOR_APP
101
+ - lib/templates/environments
102
+ - lib/templates/environments/environment.rb
103
+ - lib/templates/media
104
+ - lib/templates/media/basic.rmaterial
105
+ - lib/templates/media/default.mesh
106
+ - lib/templates/media/default.png
107
+ - lib/templates/media/offset_map.rmaterial
108
+ - lib/templates/MIT-LICENSE
109
+ - lib/templates/Rakefile
110
+ - lib/templates/README
111
+ - lib/templates/test
112
+ - lib/templates/test/test_helper.rb
113
+ test_files: []
114
+
115
+ rdoc_options:
116
+ - --exclude
117
+ - lib/rails_generator
118
+ extra_rdoc_files: []
119
+
120
+ executables:
121
+ - shatter
122
+ extensions: []
123
+
124
+ requirements:
125
+ - Shattered is reliant on all shattered packages
126
+ dependencies:
127
+ - !ruby/object:Gem::Dependency
128
+ name: shattered_ogrerb
129
+ version_requirement:
130
+ version_requirements: !ruby/object:Gem::Version::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: "0.5"
135
+ version:
136
+ - !ruby/object:Gem::Dependency
137
+ name: shattered_pack
138
+ version_requirement:
139
+ version_requirements: !ruby/object:Gem::Version::Requirement
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: "0.5"
144
+ version:
145
+ - !ruby/object:Gem::Dependency
146
+ name: shattered_support
147
+ version_requirement:
148
+ version_requirements: !ruby/object:Gem::Version::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: "0.5"
153
+ version: