当前位置: 首页>>代码示例>>C++>>正文


C++ Window::Closed方法代码示例

本文整理汇总了C++中Window::Closed方法的典型用法代码示例。如果您正苦于以下问题:C++ Window::Closed方法的具体用法?C++ Window::Closed怎么用?C++ Window::Closed使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Window的用法示例。


在下文中一共展示了Window::Closed方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main

int main() {

    Window window;
    Camera camera(window.GetAspectRatio(), glm::vec3(2.0, 2.0, 1.0));
    Mesh* sphereMesh = CreateMesh("sphere.obj", "sphere");
    Shader defaultShader("Shaders/defaultShader.vert", "Shaders/defaultShader.frag", "defaultShader");
    SetupMesh(sphereMesh, defaultShader);
    do {
        window.Clear();

        DrawMesh(*sphereMesh, camera, defaultShader);
        camera.front = sphereMesh->position;
        sphereMesh->rotY -= 0.016;
        {
            if (glfwGetKey(window.GetWindowInstance(), GLFW_KEY_W) == GLFW_PRESS) {
                sphereMesh->position.x -= 0.16;
            }
            else if (glfwGetKey(window.GetWindowInstance(), GLFW_KEY_S) == GLFW_PRESS) {
                sphereMesh->position.x += 0.16;
            }
            if (glfwGetKey(window.GetWindowInstance(), GLFW_KEY_A) == GLFW_PRESS) {
                sphereMesh->position.z += 0.16;
            }
            else if (glfwGetKey(window.GetWindowInstance(), GLFW_KEY_D) == GLFW_PRESS) {
                sphereMesh->position.z -= 0.16;
            }
        }
        window.Update();
    } while (!window.Closed() && glfwGetKey(window.GetWindowInstance(), GLFW_KEY_ESCAPE) != GLFW_PRESS);
    delete sphereMesh;
}
开发者ID:Raf22,项目名称:Snow,代码行数:31,代码来源:main.cpp

示例2: Refresh

void View::Refresh( void ) {
  Window *win = static_cast<Window *>( windows.Tail() );

  Flood( Color(CF_COLOR_WHITE) );
  while ( win ) {
    if ( !win->Closed() ) {
      win->Blit( this, Rect( 0, 0, win->Width(), win->Height() ),
                 win->LeftEdge(), win->TopEdge() );
    }
    win = static_cast<Window *>( win->Prev() );
  }

  // now update the display
  Update();
}
开发者ID:drodin,项目名称:Crimson,代码行数:15,代码来源:view.cpp

示例3: HandleEvents

GUI_Status View::HandleEvents( void ) {
  SDL_Event event;
  GUI_Status rc = FetchEvent( event );

  if ( (rc != GUI_ERROR) && (rc != GUI_QUIT) && (rc != GUI_NONE) ) {
    Window *win = static_cast<Window *>( windows.Head() );
    if ( win ) {
      rc = win->HandleEvent( event );
      if ( rc == GUI_CLOSE ) win = CloseWindow( win );
    }

    // collect destroyed windows
    while ( (win = static_cast<Window *>(windows.Tail())) && win->Closed() ) {
      win->Remove();
      delete win;
    }
  }
  return rc;
}
开发者ID:drodin,项目名称:Crimson,代码行数:19,代码来源:view.cpp

示例4: CloseAllWindows

void View::CloseAllWindows( void ) {
  for ( Window *w = static_cast<Window *>(windows.Head());
        w && !w->Closed(); w = static_cast<Window *>(w->Next()) )
    w->Close();
  Refresh();
}
开发者ID:drodin,项目名称:Crimson,代码行数:6,代码来源:view.cpp

示例5:

JNIEXPORT jboolean JNICALL Java_sp_app_Window_native_1Closed
(JNIEnv *env, jclass cls, jlong handler) {
	Window* window = getHandle<Window>(handler);
	return window->Closed();
}
开发者ID:Itay2805,项目名称:Sparky4j-core-3D,代码行数:5,代码来源:Window.cpp


注:本文中的Window::Closed方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。