Exemple #1
0
    def _create_display(self, width, height):
        size = width, height
        flags = pygame.OPENGL | pygame.DOUBLEBUF

        self.screen = pygame.display.set_mode(size, flags)
        rabbyt.set_viewport(size)
        rabbyt.set_default_attribs()
Exemple #2
0
 def on_draw():
     rabbyt.clear(rgba=CLEAR_COLOR_DEFAULT)
     rabbyt.set_viewport(
         get_viewport(window.width, window.height),
         WORLD_BOUNDS
     )
     draw_glyphs()
     draw_sprites()
 def on_draw(self):
     rabbyt.clear()
     # Draw the current scene
     if self.current_scene is not None:
         self.current_scene.on_draw()
     # Draw fps
     rabbyt.set_viewport((self.width, self.height), projection=self.static_projection())
     self.fps_display.draw()
Exemple #4
0
 def __init__(self):
     super(Controller, self).__init__(width=constants.WIDTH, height=constants.HEIGHT, caption="Nanobiotics")#, fullscreen=True)        
     self.viewport = fixed_resolution.FixedResolutionViewport(self, constants.WIDTH, constants.HEIGHT, filtered=False)        
     rabbyt.set_viewport((constants.WIDTH, constants.HEIGHT))
     rabbyt.set_default_attribs()        
     
     self.set_exclusive_mouse(True)
     self.set_mouse_visible(False)
     self.state = None
def init () :
    global window
    flags = pygame.OPENGL | pygame.DOUBLEBUF
    if BCONF.fullscreen :
        flags |= pygame.FULLSCREEN

    pygame.display.init ()
    window = pygame.display.set_mode ( ( BCONF.width, BCONF.height ), flags )
    rabbyt.set_viewport ( ( BCONF.width, BCONF.height ), ( -width, height, width, -height ) )
    rabbyt.set_default_attribs ()
Exemple #6
0
    def __init__(self):
        super(Controller,
              self).__init__(width=constants.WIDTH,
                             height=constants.HEIGHT,
                             caption="Nanobiotics")  #, fullscreen=True)
        self.viewport = fixed_resolution.FixedResolutionViewport(
            self, constants.WIDTH, constants.HEIGHT, filtered=False)
        rabbyt.set_viewport((constants.WIDTH, constants.HEIGHT))
        rabbyt.set_default_attribs()

        self.set_exclusive_mouse(True)
        self.set_mouse_visible(False)
        self.state = None
Exemple #7
0
def main():
	def tuio(dt):
		"""pyglet callback event to check for OSC messages"""
		server.recv(0.0333333333333)
	skreen=canvas(photoDeck(skreenPics().sprites))
	server = liblo.Server(3333)
	server.add_method('/tuio/2Dcur', None, skreen.handleOsc)
	#server.add_method('/tuio/2Dcur', None, debugtuio)
	pyglet.clock.schedule_interval(tuio, 0.0001)
	pyglet.clock.schedule(rabbyt.add_time)
	rabbyt.set_default_attribs()
	rabbyt.set_viewport((skreen.window.height,skreen.window.width))
	pyglet.app.run()
def main():
    """Initialize environment, then start game instance."""
    pygame.init()
    pygame.display.set_mode( (WINWIDTH, WINHEIGHT),
                             pygame.OPENGL | pygame.DOUBLEBUF )
    # (0,0) is center point of screen
    rabbyt.set_viewport( (WINWIDTH, WINHEIGHT) )
    rabbyt.set_default_attribs()
    pygame.display.set_icon(pygame.image.load(os.path.join('images',
        'gameicon.png')).convert_alpha())
    pygame.display.set_caption('Escape from Wikipedia')

    while True:
        runGame()       # Allows restarts
Exemple #9
0
def main():
    def tuio(dt):
        """pyglet callback event to check for OSC messages"""
        server.recv(0.0333333333333)

    skreen = canvas(photoDeck(skreenPics().sprites))
    server = liblo.Server(3333)
    server.add_method('/tuio/2Dcur', None, skreen.handleOsc)
    #server.add_method('/tuio/2Dcur', None, debugtuio)
    pyglet.clock.schedule_interval(tuio, 0.0001)
    pyglet.clock.schedule(rabbyt.add_time)
    rabbyt.set_default_attribs()
    rabbyt.set_viewport((skreen.window.height, skreen.window.width))
    pyglet.app.run()
 def __init__(self, width, height):
     pygame.display.set_mode((width, height), pygame.OPENGL | pygame.DOUBLEBUF)
     rabbyt.set_viewport((width, height), projection=(0, 0, width, height))
     rabbyt.set_default_attribs()
     self.size = (width, height)
     self.ratio = float(width) / height
     self.pieces = []
     self.grabbed_piece = None
     self.panning = False
     self.panning_x = 0
     self.panning_y = 0
     self.viewport_x = 0
     self.viewport_y = 0
     self.z = 0
     self.boards = [rabbyt.Sprite(texture='board.png')]
     for card_image in glob.glob(os.path.join('cards', '*png')):
         self.pieces.append(Piece(texture=card_image, back=os.path.join('cards', 'backs', 'back-red-150-2.png')))
Exemple #11
0
    def on_draw(self):
        draw_area = self.draw_area()
        static_projection = (0, draw_area[1], draw_area[0], 0)
        # Draw background
        rabbyt.set_viewport(draw_area, projection = static_projection)
        # reset opengl draw colour
        glColor(255, 255, 255, 1)
        GameScene.BACKGROUND.blit_tiled(0, 0, 0, draw_area[0], draw_area[1])

        # Draw transformed sprites
        rabbyt.set_viewport(draw_area, projection = self.camera)
        rabbyt.render_unsorted(self.entities)

        # Draw static sprites
        rabbyt.set_viewport(draw_area, projection = static_projection)
        for label in self.score_labels:
            label.draw()
Exemple #12
0
        s.rgba = .7, .5, 0, rabbyt.lerp(.1, 0, now+lifetime/2, now+lifetime)

        Car.dust_particles.add(s)
        rabbyt.scheduler.add(rabbyt.get_time()+lifetime,
                lambda:Car.dust_particles.remove(s))

    def render(self):
        self.shadow.render()
        rabbyt.Sprite.render(self)



if __name__ == "__main__":
    pygame.init()
    pygame.display.set_mode((800,600), pygame.OPENGL | pygame.DOUBLEBUF)
    rabbyt.set_viewport((800, 600))
    rabbyt.set_default_attribs()

    print """
    This is a simple example for using rabbyt.

    Use the arrow keys to steer.  Press SPACE to boost.
    """

    car1 = Car("car")

    cars = [car1]

    clock = pygame.time.Clock()
    while True:
        clock.tick(40)
Exemple #13
0
#right  = lambda:  (size[0]/2)
#bottom = lambda: -(size[1]/2)
#top    = lambda:  (size[1]/2)

left   = lambda: 0
top    = lambda: 0
right  = lambda: size[0]
bottom = lambda: size[1]

#FPS = 999
#FPS = 60

# Also possible: (left, top, right, bottom)
# for setting (0, 0) to not be in the center
#rabbyt.set_viewport(size)
rabbyt.set_viewport((left(), top(), right(), bottom()))

#rabbyt.set_default_attribs()

def center_image(img):
    img.anchor_x = img.width /2
    img.anchor_y = img.height/2

pyglet.resource.path = [".", "alpha", "art"]
pyglet.resource.reindex()

star_img = pyglet.resource.image("star.png")

center_image(star_img)

def random_string():
Exemple #14
0
# setup window
pygame.init()
pygame.display.set_mode(size, video_opts)

pygame.mouse.set_visible(False)

def toggle_fullscreen():
    global video_opts
    video_opts ^= FULLSCREEN
    pygame.display.set_mode(size, video_opts)

# Also possible: (left, top, right, bottom)
# for setting (0, 0) to not be in the center
#rabbyt.set_viewport(size)
rabbyt.set_viewport(size)

rabbyt.set_default_attribs()

# load our sprite
def surface_to_texture_id(surf):
    surf = pygame.transform.flip(surf, True, True)
    size = surf.get_size()
    txt  = pygame.image.tostring(surf, "RGBA")
    
    return gfx.gl.load_texture(txt, size)

sprite_surf = pygame.image.load("bullet.png").convert_alpha()
sprite_id   = surface_to_texture_id(sprite_surf)

sprites = [rabbyt.Sprite(sprite_id, sprite_surf.get_size()) for x in xrange(sprite_count)]
Exemple #15
0
def init():
	log.info("Setting up")
	pygame.init()
	game.window = pygame.display.set_mode(game.config.size,game.config.screenargs)
	rabbyt.set_viewport(game.config.size)
	rabbyt.set_default_attribs()
Exemple #16
0
import random

import rabbyt
from rabbyt import lerp, wrap
import pygame
import os.path

rabbyt.data_directory = os.path.dirname(__file__)

pygame.init()
pygame.display.set_mode((640, 480), pygame.OPENGL | pygame.DOUBLEBUF)
rabbyt.set_viewport((640, 480))
rabbyt.set_default_attribs()

sprites = []

r = lambda: random.random() - .5

for i in range(2400):
    s = rabbyt.Sprite("rounded_square.png")
    s.rgba = lerp((.5, .2, 1, .2), (0, .8, 0, .6),
                  dt=3 * r() + 2,
                  extend="reverse")

    s.x = wrap([-320, 320],
               lerp(r() * 640, r() * 640, dt=2, extend="extrapolate"))
    s.y = wrap([-240, 240],
               lerp(r() * 480, r() * 480, dt=2, extend="extrapolate"))

    s.scale = lerp(.1, 1, dt=r() + .75, extend="reverse")
Exemple #17
0
import random

import rabbyt
from rabbyt.fonts import Font, FontSprite
import pygame
import os.path
rabbyt.data_directory = os.path.dirname(__file__)

pygame.init()
pygame.display.set_mode((800, 480), pygame.OPENGL | pygame.DOUBLEBUF)
rabbyt.set_viewport((800, 480))
rabbyt.set_default_attribs()

font = Font(pygame.font.Font(pygame.font.get_default_font(), 20))

sprites = []

sprites.append(FontSprite(font, "lerp", x=-275, y=480/2-10))
sprites.append(rabbyt.Sprite(x=-275, y=480/2-50))
sprites.append(rabbyt.Sprite(x=-125, y=480/2-50))
s = rabbyt.Sprite()
s.x = rabbyt.lerp(-275, -125, dt=3, extend="repeat")
s.y = 480/2-50
sprites.append(s)


sprites.append(FontSprite(font, "ease", x=-275, y=480/2-70))
sprites.append(FontSprite(font, "ease_out", x=-20, y=480/2-70))
sprites.append(FontSprite(font, "ease_in", x=235, y=480/2-70))

methods = ["sine", "quad", "cubic", "circ", "back", "bounce"]
Exemple #18
0
                x += self.font.space_width
                continue
            w = self.font.get_char_width(char)
            l, t, r, b = self.font.get_char_tex_shape(char)
            self.char_sprites.append(rabbyt.Sprite(texture=self.texture_id,
                    shape=(x, 0, x+w, -h),
                    tex_shape=self.font.get_char_tex_shape(char),
                    rgba=self.attrgetter('rgba')))
            x += w+1
    text = property(_get_text, _set_text, doc="the text to be displayed")

    def render_after_transform(self):
        rabbyt.render_unsorted(self.char_sprites)

if __name__=="__main__":
    pygame.init()
    pygame.display.set_mode((640, 480), pygame.OPENGL | pygame.DOUBLEBUF)
    rabbyt.set_viewport((640, 480))
    rabbyt.set_default_attribs()

    font = Font(pygame.font.Font(pygame.font.get_default_font(), 20))
    sprite = FontSprite(font, "hello world")
    sprite.rot = rabbyt.lerp(0, 360, dt=6, extend="repeat")
    sprite.x = 100
    sprite.rgb = 0,1,1

    while not pygame.event.get(pygame.QUIT):
        rabbyt.clear((0,.5,.5,1))
        rabbyt.set_time(pygame.time.get_ticks()/1000)
        sprite.render()
        pygame.display.flip()
 def update_viewport(self):
     rabbyt.set_viewport(self.size, projection=(self.viewport_x,
                                                self.viewport_y,
                                                (self.size[0] - self.ratio * self.z) + self.viewport_x,
                                                self.size[1] - self.z + self.viewport_y))
Exemple #20
0
from math import hypot

import pygame
import rabbyt

rabbyt.init_display((640, 480))
rabbyt.set_viewport((640, 480), projection=(0, 0, 640, 480))

control_points = [
    rabbyt.Sprite(xy=xy)
    for xy in [(100, 100), (200, 50), (300, 150), (400, 100)]
]
grabbed_point = None

path_followers = []


def generate_followers():
    global path_followers
    p = [c.xy for c in control_points]
    path_followers = [
        rabbyt.Sprite(xy=rabbyt.bezier3(
            p[0], p[1], p[2], p[3], i * 200, i * 200 + 2000, extend="repeat"))
        for i in range(10)
    ]


generate_followers()

print "Click and drag the control points."
Exemple #21
0
    def __init__(self):
        self.screen = pygame.display.set_mode(SCREEN_SIZE, \
		              pygame.OPENGLBLIT | pygame.DOUBLEBUF)
        rabbyt.set_viewport(SCREEN_SIZE)
        rabbyt.set_default_attribs()

        #self.game_state = [STARTING_SCREEN] ## A stack of game screens.

        self.temp_score = 0
        self.font = pygame.font.Font(None, 24)
        self.clock = pygame.time.Clock()
        self.fps = 0
        self.previous_tick_count = pygame.time.get_ticks()

        self.font = Font(pygame.font.Font(None, 36))

        #title state
        self.backg = pygame.Surface(self.screen.get_size()).convert()
        #self.numCalled = 0

        self.joystick = self.setup_joystick()
        """
        if isnone(self.joystick):
            print "joystick detected"
        else:
            print "no joystick detected"
        """

        #high scores
        self.winner_name = ""
        self.high_scores = []
        self.high_score_names = []
        self.user = user_data.User()
        if not os.path.isfile("RabbitHighScores"):
            self.high_scores = ['0', '0', '0', '0', '0']
            self.high_score_names = ["OKW", "KRW", "ON", "DL", "AAA"] 
            fdata = open("RabbitHighScores", 'w')
            fdata.write("OKW 0\nKRW 0\nON 0\nDL 0\nAAA 0")
        else:
            fdata = open("RabbitHighScores")
            for line in fdata.readlines():
                temp = line.split()
                self.high_scores.append(int(temp[1]))
                self.high_score_names.append(temp[0])
        #music
        pygame.mixer.init(frequency=22050,size=-16, channels=2, buffer=4096)
        #self.crash = pygame.mixer.Sound('Crash1.wav')
        self.win_sound = pygame.mixer.Sound('winning.wav')
        self.lose_sound = pygame.mixer.Sound('losing.wav')
        self.gem_pickup_sound = pygame.mixer.Sound('gem.wav')
        self.bullet_sound = pygame.mixer.Sound('bullet.wav')

        pygame.mixer.music.load('game-motif-sad.mp3')
        pygame.mixer.music.play(-1, 0.0)

        self.game_states = []
        self.done = False
        self.game_states.append(states.menu.Menu())
        self.game_states.append(states.set_controls.SetControls())

        #time
        self.time_offset = 0.0
Exemple #22
0
from math import hypot

import pygame
import rabbyt

rabbyt.init_display((640,480))
rabbyt.set_viewport((640,480), projection=(0,0,640,480))

control_points = [rabbyt.Sprite(xy=xy) for xy in
        [(100,100),(200,50),(300,150),(400,100)]]
grabbed_point = None

path_followers = []
def generate_followers():
    global path_followers
    p = [c.xy for c in control_points]
    path_followers = [rabbyt.Sprite(xy=rabbyt.bezier3(p[0], p[1], p[2], p[3],
            i*200, i*200 + 2000, extend="repeat")) for i in range(10)]

generate_followers()

print "Click and drag the control points."

clock = pygame.time.Clock()
running=True
while running:
    clock.tick(40)

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running=False
        rabbyt.Sprite.__init__(self, **kargs)
        self.animflag = False
    def animendcallback(self):
        self.animflag = False
    def width(self):
        return self.right - self.left
    def height(self):
        return self.bottom - self.top

size = (800.0, 600)
ratio = (size[0]/size[1])

print ratio
pygame.init()
pygame.display.set_mode(size, pygame.OPENGL | pygame.DOUBLEBUF)
rabbyt.set_viewport(size, projection=(0, 0, size[0], size[1]))
rabbyt.set_default_attribs()

pieces = [Piece(xy=attributes[0], texture=attributes[1]) for attributes in
        [((100, 100), 'red_viking.png'),
         ((200, 50),  'green_viking.png'),
         ((300, 150), 'island_tile.png'),
         ((400, 100), 'island_tile.png')]]
grabbed_point = None

print "Click and drag the pieces. Scrollwheel to rotate pieces."

clock = pygame.time.Clock()
running=True
z=0
offset_x = 0