shattered_ruby 0.5.0.2

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.
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: