Skip to content

Commit 3d24793

Browse files
committed
Track creation trough Effect:get_track(name)
1 parent d04a346 commit 3d24793

File tree

3 files changed

+34
-1
lines changed

3 files changed

+34
-1
lines changed

demosys/effects/effect.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,19 @@ class Effect:
2323
def draw(self, time, frametime, target):
2424
raise NotImplemented
2525

26-
# Utility Stuff
26+
# Methods for getting resources
27+
2728
def get_shader(self, path):
2829
return resources.shaders.get(path, create=True)
2930

3031
def get_texture(self, path):
3132
return resources.textures.get(path, create=True)
3233

34+
def get_track(self, name):
35+
resources.tracks.get(name)
36+
37+
# Utility methods for matrices
38+
3339
def create_projection(self, fov=75.0, near=1.0, far=100.0, ratio=None):
3440
return matrix44.create_perspective_projection_matrix(
3541
fov,

demosys/resources/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
from .shaders import shaders
22
from .textures import textures
3+
from .tracks import tracks
34

45

56
def load():
67
shaders.load()
78
textures.load()
9+
tracks.load()
810

911

1012
def count():

demosys/resources/tracks.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
"""
2+
Registry for rocket tracks
3+
"""
4+
from rocket.tracks import Track
5+
6+
7+
class Tracks:
8+
def __init__(self):
9+
self.tacks = []
10+
self.track_map = {}
11+
12+
def get(self, name):
13+
name = name.lower()
14+
track = self.track_map.get(name)
15+
if not track:
16+
track = Track(name)
17+
self.tacks.append(track)
18+
self.track_map[name] = track
19+
return track
20+
21+
def load(self):
22+
pass
23+
24+
25+
tracks = Tracks()

0 commit comments

Comments
 (0)