Exemplo n.º 1
0
def start():
  # initialize oculus rift
  avango.oculus.initOVR()

	# create scene
  Scene = scene.create()

  # create and launch viewer
  viewer = SimpleViewer()
  viewer.SceneGraph.value = Scene
  gpMat = viewer.green_pointer.MatrixOut.value
  bpMat = viewer.blue_pointer.MatrixOut

  # create loader for geometries
  loader = avango.gua.nodes.GeometryLoader()

  monkey_node = loader.create_geometry_from_file('monkey', 'data/objects/sphere.obj', 'White', avango.gua.LoaderFlags.DEFAULTS)
  monkey_node.Transform.value = avango.gua.make_scale_mat(0.2, 0.2, 0.2)
  m_transform = avango.gua.nodes.TransformNode(Name = 'm1')
  m_transform.Transform.value = avango.gua.make_trans_mat(0, 0, 0)
  m_transform.Children.value.append(monkey_node)
  Scene.Root.value.Children.value.append(m_transform)

  m_transform.Transform.connect_from(viewer.blue_pointer.MatrixOut)

  monkey2_node = loader.create_geometry_from_file('monkey2', 'data/objects/sphere.obj', 'White', avango.gua.LoaderFlags.DEFAULTS)
  monkey2_node.Transform.value = avango.gua.make_scale_mat(0.2, 0.2, 0.2)
  m2_transform = avango.gua.nodes.TransformNode(Name = 'm2')
  m2_transform.Transform.value = avango.gua.make_trans_mat(0, 0, 0)
  m2_transform.Children.value.append(monkey2_node)
  Scene.Root.value.Children.value.append(m2_transform)

  m2_transform.Transform.connect_from(viewer.green_pointer.MatrixOut)

  viewer.run(locals(), globals())
Exemplo n.º 2
0
def start():

    avango.gua.load_shading_models_from("data/materials")
    avango.gua.load_materials_from("data/materials")

    graph = scene.create()

    eye = avango.gua.nodes.TransformNode(Name="eye",
                                         Transform=avango.gua.make_trans_mat(
                                             0, 0, 4))

    screen_size = avango.gua.Vec2(8, 4.5)

    screen = avango.gua.nodes.ScreenNode(Name="screen",
                                         Width=screen_size.x,
                                         Height=screen_size.y,
                                         Children=[eye])

    graph.Root.value.Children.value.append(screen)

    camera = avango.gua.nodes.Camera(LeftEye=eye.Path.value,
                                     LeftScreen=screen.Path.value,
                                     SceneGraph=graph.Name.value)

    split_screens = DynamicSplitScreens(GraphIn=graph, WindowSize=size)

    split_screens.init(
        5, lambda: avango.gua.nodes.Pipeline(
            LeftResolution=size,
            BackgroundTexture="data/textures/checker.png",
            BackgroundMode=avango.gua.BackgroundMode.SKYMAP_TEXTURE,
            AmbientColor=avango.gua.Color(1, 1, 1)))

    split_screens.add_split_screen(camera, avango.gua.Vec2(0, 0))

    def split(split_pos):
        return create_split_screen(graph, split_pos, split_screens,
                                   screen_size)

    def unsplit(split_screen):
        remove_split(graph, split_screen, split_screens)

    split_screen_handler = SplitScreenHandler()
    split_screen_handler.SplitScreens = split_screens

    #setup viewer
    viewer = avango.gua.nodes.Viewer(DesiredFPS=50)
    viewer.Pipelines.value = [split_screens.PipelineOut.value]
    viewer.SceneGraphs.value = [split_screens.GraphOut.value, graph]

    guaVE = GuaVE()
    guaVE.start(locals(), globals())

    viewer.run()
Exemplo n.º 3
0
def start():

  avango.gua.load_shading_models_from("data/materials")
  avango.gua.load_materials_from("data/materials")

  graph = scene.create()

  eye = avango.gua.nodes.TransformNode(
    Name = "eye",
    Transform = avango.gua.make_trans_mat(0, 0, 4)
  )

  screen_size = avango.gua.Vec2(8, 4.5)

  screen = avango.gua.nodes.ScreenNode(
    Name = "screen",
    Width = screen_size.x,
    Height = screen_size.y,
    Children = [eye]
  )

  graph.Root.value.Children.value.append(screen)

  camera = avango.gua.nodes.Camera(
    LeftEye = eye.Path.value,
    LeftScreen = screen.Path.value,
    SceneGraph = graph.Name.value
  )

  split_screens = DynamicSplitScreens(
    GraphIn = graph,
    WindowSize = size
  )

  split_screens.init(5, lambda:
    avango.gua.nodes.Pipeline(
      LeftResolution = size,
      BackgroundTexture = "data/textures/checker.png",
      BackgroundMode = avango.gua.BackgroundMode.SKYMAP_TEXTURE,
      AmbientColor = avango.gua.Color(1, 1, 1)
    )
  )

  split_screens.add_split_screen(camera, avango.gua.Vec2(0, 0))

  def split(split_pos):
    return create_split_screen(graph, split_pos, split_screens, screen_size)

  def unsplit(split_screen):
    remove_split(graph, split_screen, split_screens)


  split_screen_handler = SplitScreenHandler()
  split_screen_handler.SplitScreens = split_screens

  #setup viewer
  viewer = avango.gua.nodes.Viewer(
    DesiredFPS = 50
  )
  viewer.Pipelines.value = [split_screens.PipelineOut.value]
  viewer.SceneGraphs.value = [split_screens.GraphOut.value, graph]

  guaVE = GuaVE()
  guaVE.start(locals(), globals())

  viewer.run()