本文整理汇总了C++中ogre::Viewport类的典型用法代码示例。如果您正苦于以下问题:C++ Viewport类的具体用法?C++ Viewport怎么用?C++ Viewport使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Viewport类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: createViewports
//---------------------------------------------------------------------------
void BaseApplication::createViewports(void)
{
// Create one viewport, entire window
Ogre::Viewport* vp = mWindow->addViewport(mCamera);
vp->setBackgroundColour(Ogre::ColourValue(0,0,0));
// Alter the camera aspect ratio to match the viewport
mCamera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight()));
}
开发者ID:rennspargel,项目名称:OGRE_Test,代码行数:10,代码来源:BaseApplication.cpp
示例2: createViewports
//---------------------------------------------------------------------------
void TutorialApplication::createViewports()
{
Ogre::Viewport* vp = mWindow->addViewport(mCamera);
vp->setBackgroundColour(Ogre::ColourValue(0,0,0));
mCamera->setAspectRatio(
Ogre::Real(vp->getActualWidth()) /
Ogre::Real(vp->getActualHeight()));
}
开发者ID:pieiscool,项目名称:gametech1,代码行数:10,代码来源:TutorialApplication.cpp
示例3: AdjustPauseMenuPosition
void GUIManager::AdjustPauseMenuPosition()
{
Ogre::Viewport* viewport = RoR::App::GetOgreSubsystem()->GetRenderWindow()->getViewport(0);
int margin = (viewport->getActualHeight() / 15);
m_impl->panel_GamePauseMenu.SetPosition(
margin, // left
viewport->getActualHeight() - m_impl->panel_GamePauseMenu.GetHeight() - margin // top
);
}
开发者ID:monwarez,项目名称:rigs-of-rods,代码行数:9,代码来源:GUIManager.cpp
示例4: main
int main(int argc, char* argv[]){
cout << "Test Ogre Program" << endl;
//Relative to where its executed from, not binary location
Ogre::Root *mRoot = new Ogre::Root("configs/plugins.cfg","configs/config.cfg","logs/main.log");
if(!(mRoot->restoreConfig() || mRoot->showConfigDialog())){
delete mRoot;
return -1;
}
// setup resources
// Only add the minimally required resource locations to load up the Ogre head mesh
Ogre::ResourceGroupManager::getSingleton().addResourceLocation("/Users/jgrey/OgreSDK/Media/materials/programs", "FileSystem", "General");
Ogre::ResourceGroupManager::getSingleton().addResourceLocation("/Users/jgrey/OgreSDK/Media/materials/programs/GLSL", "FileSystem", "General");
Ogre::ResourceGroupManager::getSingleton().addResourceLocation("/Users/jgrey/OgreSDK/Media/materials/scripts", "FileSystem", "General");
Ogre::ResourceGroupManager::getSingleton().addResourceLocation("/Users/jgrey/OgreSDK/Media/materials/textures", "FileSystem", "General");
Ogre::ResourceGroupManager::getSingleton().addResourceLocation("/Users/jgrey/OgreSDK/Media/models", "FileSystem", "General");
Ogre::ResourceGroupManager::getSingleton().addResourceLocation("/Users/jgrey/github/Ogre_test/data","FileSystem","General");
//Create the window
Ogre::RenderWindow *mWindow = mRoot->initialise(true, "initial Render Window");
Ogre::SceneManager *sceneManager = mRoot->createSceneManager(Ogre::ST_GENERIC);
Ogre::Camera *camera = sceneManager->createCamera("PlayerCam");
camera->setPosition(Ogre::Vector3(0,0,80));
camera->lookAt(Ogre::Vector3(0,0,-300));
camera->setNearClipDistance(5);
Ogre::Viewport* vp = mWindow->addViewport(camera);
vp->setBackgroundColour(Ogre::ColourValue(0,0,0,0));
camera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight()));
Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
//Ogre::Entity* ogreHead = sceneManager->createEntity("Head","ogreHead.mesh");
Ogre::Entity* ogreHead = sceneManager->createEntity("Head","myTest.obj");
Ogre::SceneNode* headNode = sceneManager->getRootSceneNode()->createChildSceneNode();
headNode->attachObject(ogreHead);
sceneManager->setAmbientLight(Ogre::ColourValue(0.5,0.5,0.5));
//Run the system
bool continueRunning = true;
while(continueRunning){
mRoot->renderOneFrame();
headNode->rotate(Ogre::Vector3(0,1,0),Ogre::Radian(0.005));
if(mWindow->isClosed()){
continueRunning = false;
}
}
delete mRoot;
}
开发者ID:jgrey4296,项目名称:languageLearning,代码行数:56,代码来源:ogre_main.cpp
示例5: viewport_get_background_colour
//Ogre::Viewport::getBackgroundColour() const
void viewport_get_background_colour(ViewportHandle handle, coiColourValue* cv)
{
Ogre::Viewport* vp = reinterpret_cast<Ogre::Viewport*>(handle);
const Ogre::ColourValue &c = vp->getBackgroundColour();
cv->r = c.r;
cv->b = c.b;
cv->g = c.g;
cv->a = c.a;
}
开发者ID:fire-archive,项目名称:llcoi,代码行数:11,代码来源:viewport_bind.cpp
示例6: setupViewport
void MultiMgrSample::setupViewport(Ogre::SceneManager *curr)
{
mWindow->removeAllViewports();
Ogre::Camera *cam = curr->getCamera(CAMERA_NAME);
Ogre::Viewport *vp = mWindow->addViewport(cam);
vp->setBackgroundColour(Ogre::ColourValue(0,0,0));
cam->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight()));
}
开发者ID:DDeimos,项目名称:DeimosSpace,代码行数:10,代码来源:MultiMgrSample.cpp
示例7:
bool CSimulatorWindowHandler::view3DButtonClicked(const CEGUI::EventArgs& e)
{
m_renderTexture->removeAllViewports();
Ogre::Viewport *viewport = m_renderTexture->addViewport(m_cam3D);
viewport->setOverlaysEnabled(false);
viewport->setClearEveryFrame(true);
viewport->setBackgroundColour(Ogre::ColourValue::Black);
return true;
}
开发者ID:dividio,项目名称:projectfootball,代码行数:10,代码来源:CSimulatorWindowHandler.cpp
示例8:
GameState* StateManager::changeState ( const std::string& state_name, Ogre::RenderWindow* window ){
_prev_state = _current_state;
_current_state = _states[state_name];
window->removeAllViewports();
Ogre::Camera* camera = _current_state->getScene()->getCamera(MainCameraName);
Ogre::Viewport* vp = window->addViewport(camera);
vp->setBackgroundColour(Ogre::ColourValue(0.5,0.5,0.5));
camera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight()));
return _current_state;
}
开发者ID:ANtlord,项目名称:Ogre3d-study,代码行数:10,代码来源:gwGameStateManager.cpp
示例9: QWidget
// -----------------------------------------------------------------------------
CardEditor::CardEditor(EditorProject* project, DeckEditor* parentEditor, QWidget *parent, Qt::WFlags flags)
: QWidget(parent, flags),
EditorWidget(project, parentEditor),
widget(0),
cards(project->getCards()),
current(0),
hasChanged(false),
notified(false),
currentItem(0),
cardCount(cards.size()),
rsError(false) {
ui.setupUi(this);
// We're trying to create a 3D Render Preview. If this fails, the user
// will still be able to edit stuff, but can't preview changes.
try {
// Create Editor RenderView
widget = new OgreWidget(Util::toQString(EditorSystem::getInstance().getRenderView()), ui.ogreWidget);
widget->setBaseSize(QSize(288,384));
widget->setFixedWidth(288);
widget->setFixedHeight(384);
widget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
widget->setFocusPolicy(Qt::NoFocus);
ui.ogreWidget->setAttribute(Qt::WA_PaintOnScreen);
ui.ogreWidget->setAttribute(Qt::WA_NoSystemBackground);
ui.ogreWidget->setAttribute(Qt::WA_NoBackground);
ui.innerLayout->addWidget(widget, 1, 1);
// We need a camera and Viewport in order to display anything
Ogre::Camera* camera = Ogre::Root::getSingletonPtr()->getSceneManager("root")->createCamera("PlayerCam");
Ogre::Viewport* viewport = static_cast<OgreWidget*>(widget)->getRenderWindow()->addViewport(camera);
camera->setAspectRatio(
Ogre::Real(viewport->getActualWidth()) / Ogre::Real(viewport->getActualHeight()));
// Initialize UI & associated Managers
Arcomage::UI::UIManager::getInstance().bootstrap();
// Preload required Editor Fonts
Arcomage::ResourceManager::getInstance().preloadResources(
Arcomage::ConfigurationManager::getInstance().getPath("Fonts")+"/fonts.xml",
/* unused, Music */ "",
/* unused, Sound effects */ "");
} catch (Ogre::Exception& e) {
rsError = true;
widget = new OgreWidget("errorwidget", ui.ogreWidget, true);
ToolkitUtil::getInstance().notifyError(e.what());
}
populateTree();
this->connectUI();
}
开发者ID:Mizux,项目名称:arcomage,代码行数:56,代码来源:CardEditor.cpp
示例10: createViewports
//-------------------------------------------------------------------------------------
void THIS::createViewports(void)
{
cout << "<TRACE><LOG><SceneManager><createViewports> " << endl;
// Create one viewport, entire window
Ogre::Viewport* vp = mWindow->addViewport(mCamera);
vp->setBackgroundColour(Ogre::ColourValue(0,0,0));
// Alter the camera aspect ratio to match the viewport
mCamera->setAspectRatio(
Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight()));
}
开发者ID:jmecosta,项目名称:Navlaser3,代码行数:12,代码来源:scene_manager.cpp
示例11:
/// r,g,b,a
static int SetBackCol (lua_State *L) { PROFILE
Ogre::Viewport* pViewport = checkudata_alive(L)->mpViewport;
if (!pViewport) return 0;
int numargs=lua_gettop(L);
Ogre::Real r = (numargs >= 2 && !lua_isnil(L,2)) ? luaL_checknumber(L,2) : 0;
Ogre::Real g = (numargs >= 3 && !lua_isnil(L,3)) ? luaL_checknumber(L,3) : 0;
Ogre::Real b = (numargs >= 4 && !lua_isnil(L,4)) ? luaL_checknumber(L,4) : 0;
Ogre::Real a = (numargs >= 5 && !lua_isnil(L,5)) ? luaL_checknumber(L,5) : 0;
pViewport->setBackgroundColour(Ogre::ColourValue(r,g,b,a));
return 0;
}
开发者ID:ghoulsblade,项目名称:lugreexample,代码行数:12,代码来源:lugre_viewport_L.cpp
示例12: mRoot
MiniMapManager::MiniMapManager(Ogre::Root *root, Ogre::RenderWindow *window): mRoot(root), mWindow(window)
{
mSceneMgr = mRoot->createSceneManager(Ogre::ST_GENERIC, "MiniMapSceneMgr");
mCamera = mSceneMgr->createCamera("miniMapCamera");
Ogre::Viewport *vp = mWindow->addViewport(mCamera, 1, 0, 0.8, 0.2, 0.2);
vp->setBackgroundColour(Ogre::ColourValue(0, 0, 0));
mCamera->setAutoAspectRatio((Ogre::Real(vp->getActualWidth())) / (Ogre::Real(vp->getActualHeight())));
mSceneMgr->setAmbientLight(Ogre::ColourValue(0.8, 0.8, 0.8));
}
开发者ID:aisle2678,项目名称:TankFight,代码行数:11,代码来源:MiniMapManager.cpp
示例13: createCamera
// funcion que configura la camara
void createCamera(Ogre::RenderWindow* window){
camera = _sceneManager->createCamera("Camera");
camera->setPosition(Ogre::Vector3(0,60,-100));
camera->lookAt(Ogre::Vector3(0,0,50));
camera->setNearClipDistance(5);
Ogre::Viewport* viewport = window->addViewport(camera);
viewport->setBackgroundColour(Ogre::ColourValue(0.0,0.0,0.0));
camera->setAspectRatio(Ogre::Real(viewport->getActualWidth())/Ogre::Real(viewport->getActualHeight()));
}
开发者ID:Isaj7,项目名称:finalOgre,代码行数:12,代码来源:main.cpp
示例14: setActiveScene
void OGKSceneManager::setActiveScene(const Ogre::String name, Ogre::Real transitionTime)
{
mPreviousScene = mActiveScene;
mActiveScene = getScene(name);
Ogre::ColourValue bg = Ogre::ColourValue::Black;
if(mPreviousScene) {
if(mPreviousScene->mCamera) {
// save viewport settings for rtt
Ogre::Camera *cam = mPreviousScene->mCamera->getCamera();
bg = cam->getViewport()->getBackgroundColour();
}
mPreviousScene->onExitTransitionDidStart();
}
if(mActiveScene) {
OGKLOG("Transitioning to " + name + " scene");
mActiveScene->onEnter();
}
if(transitionTime > 0.01) {
// transition
mTransitionTime = transitionTime;
mTransitionTimeRemaining = transitionTime;
_initRTT();
if(mPreviousScene && mPreviousScene->mCamera &&
mPreviousScene->mCamera->getCamera()) {
// render to texture instead
Ogre::Camera *cam = mPreviousScene->mCamera->getCamera();
mRenderTexture->removeAllViewports();
Ogre::Viewport *vp = mRenderTexture->addViewport(cam);
if(vp) {
//OGKLOG("Preparing rtt viewport");
vp->setClearEveryFrame(true);
vp->setBackgroundColour(bg);
vp->setOverlaysEnabled(true);
vp->setCamera(cam);
}
}
if(mOverlay) {
//OGKLOG("Showing Overlay");
mOverlay->show();
}
}
else {
if(mPreviousScene) mPreviousScene->onExit();
if(mActiveScene) mActiveScene->onEnterTransitionDidFinish();
}
}
开发者ID:petrocket,项目名称:OgreGameKit,代码行数:53,代码来源:OGKSceneManager.cpp
示例15: createViewports
//-------------------------------------------------------------------------------------
void DigitalForensicsVisualisation::createViewports(void)
{
// Create one viewport, entire window
Ogre::Viewport* vp = mWindow->addViewport(mCamera);
vp->setBackgroundColour(Ogre::ColourValue(.35,.35,.35));
// Alter the camera aspect ratio to match the viewport
//mCamera->setFarClipDistance(2000);
mCamera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight()));
mCamera->pitch(static_cast <Ogre::Radian>(-0.45));
}
开发者ID:ljmu-cms,项目名称:digital-forensics-visualisation,代码行数:13,代码来源:DigitalForensicsVisualisation.cpp
示例16: initializeGL
/**
* @brief setup the rendering context
* @author Kito Berg-Taylor
*/
void OgreWidget::initializeGL()
{
//== Creating and Acquiring Ogre Window ==//
// Get the parameters of the window QT created
Ogre::String winHandle;
#ifdef WIN32
// Windows code
winHandle += Ogre::StringConverter::toString((unsigned long)(this->parentWidget()->winId()));
#else
// Unix code
QX11Info info = x11Info();
winHandle = Ogre::StringConverter::toString((unsigned long)(info.display()));
winHandle += ":";
winHandle += Ogre::StringConverter::toString((unsigned int)(info.screen()));
winHandle += ":";
winHandle += Ogre::StringConverter::toString((unsigned long)(this->parentWidget()->winId()));
#endif
Ogre::NameValuePairList params;
params["parentWindowHandle"] = winHandle;
mOgreWindow = mOgreRoot->createRenderWindow( "QOgreWidget_RenderWindow",
this->width(),
this->height(),
false,
¶ms );
mOgreWindow->setActive(true);
WId ogreWinId = 0x0;
mOgreWindow->getCustomAttribute( "WINDOW", &ogreWinId );
assert( ogreWinId );
this->create( ogreWinId );
setAttribute( Qt::WA_PaintOnScreen, true );
setAttribute( Qt::WA_NoBackground );
//== Ogre Initialization ==//
Ogre::SceneType scene_manager_type = Ogre::ST_EXTERIOR_CLOSE;
mSceneMgr = mOgreRoot->createSceneManager( scene_manager_type );
mSceneMgr->setAmbientLight( Ogre::ColourValue(1,1,1) );
mCamera = mSceneMgr->createCamera( "QOgreWidget_Cam" );
mCamera->setPosition( Ogre::Vector3(0,1,0) );
mCamera->lookAt( Ogre::Vector3(0,0,0) );
mCamera->setNearClipDistance( 1.0 );
Ogre::Viewport *mViewport = mOgreWindow->addViewport( mCamera );
mViewport->setBackgroundColour( Ogre::ColourValue( 0.8,0.8,1 ) );
}
开发者ID:sartraher,项目名称:exodus,代码行数:56,代码来源:ogrewidget.cpp
示例17: moveAndResize
void OgreWidget::moveAndResize()
{
mWindow->reposition(x(), y());
mWindow->resize(width(), height());
mWindow->windowMovedOrResized();
for (int ct = 0; ct < mWindow->getNumViewports(); ++ct)
{
Ogre::Viewport* pViewport = mWindow->getViewport(ct);
Ogre::Camera* pCamera = pViewport->getCamera();
pCamera->setAspectRatio(static_cast<Ogre::Real>(pViewport->getActualWidth()) / static_cast<Ogre::Real>(pViewport->getActualHeight()));
}
}
开发者ID:lamogui,项目名称:LibXenoverse,代码行数:13,代码来源:OgreWidget.cpp
示例18: windowResized
// дл¤ оповещений об изменении окна рендера
void Gui::windowResized(Ogre::RenderWindow* rw)
{
FloatSize oldViewSize = mViewSize;
Ogre::Viewport * port = rw->getViewport(mActiveViewport);
mViewSize.set(port->getActualWidth(), port->getActualHeight());
mLayerManager->_windowResized(mViewSize);
// выравниваем рутовые окна
for (VectorWidgetPtr::iterator iter = mWidgetChild.begin(); iter!=mWidgetChild.end(); ++iter) {
_alignWidget((*iter), oldViewSize, mViewSize);
}
}
开发者ID:twktheainur,项目名称:vortex-ee,代码行数:14,代码来源:MyGUI_Gui.cpp
示例19: InitViewport
void AsteroidGame::InitViewport(void){
try {
/* Retrieve scene manager and root scene node */
Ogre::SceneManager* scene_manager = ogre_root_->createSceneManager(Ogre::ST_GENERIC, "MySceneManager");
Ogre::SceneNode* root_scene_node = scene_manager->getRootSceneNode();
/* Create camera object */
camera = scene_manager->createCamera("MyCamera");
Ogre::SceneNode* camera_scene_node = root_scene_node->createChildSceneNode("MyCameraNode");
camera_scene_node->attachObject(camera);
camera->setNearClipDistance(camera_near_clip_distance_g);
camera->setFarClipDistance(camera_far_clip_distance_g);
camera->setPosition(camera_position_g);
camera->lookAt(camera_look_at_g);
//camera->setFixedYawAxis(true, camera_up_g);
/* Create second camera object */
camera_2 = scene_manager->createCamera("MyCamera_2");
Ogre::SceneNode* camera_scene_node_2 = root_scene_node->createChildSceneNode("MyCameraNode_2");
camera_scene_node_2->attachObject(camera_2);
camera_2->setNearClipDistance(camera_near_clip_distance_g);
camera_2->setFarClipDistance(camera_far_clip_distance_g);
camera_2->setPosition(camera_position_g);
camera_2->lookAt(camera_look_at_g);
//camera->setFixedYawAxis(true, camera_up_g);
/*Create viewport */
Ogre::Viewport *viewport = ogre_window_->addViewport(camera, viewport_z_order_g, viewport_left_g, viewport_top_g, viewport_width_g, viewport_height_g);
viewport->setAutoUpdated(true);
viewport->setBackgroundColour(viewport_background_color_g);
/* Set aspect ratio */
float ratio = float(viewport->getActualWidth()) / float(viewport->getActualHeight());
camera->setAspectRatio(ratio);
camera_2->setAspectRatio(ratio);
}
catch (Ogre::Exception &e){
throw(OgreAppException(std::string("Ogre::Exception: ") + std::string(e.what())));
}
catch(std::exception &e){
throw(OgreAppException(std::string("std::Exception: ") + std::string(e.what())));
}
}
开发者ID:Untamedhawk,项目名称:Comp3501,代码行数:51,代码来源:AsteroidGame.cpp
示例20: PrepareRtt
void EC_RttTarget::PrepareRtt()
{
if (!ViewEnabled())
return;
//\todo XXX reconfig via AttributeUpdated when these change
int x = width.Get();
int y = height.Get();
// Get the camera ec
EC_Camera *ec_camera = ParentEntity()->GetComponent<EC_Camera>().get();
if (!ec_camera)
{
LogInfo("No camera for rtt.");
return; //XXX note: doesn't reschedule, so won't start working if cam added afterwards
}
ec_camera->GetCamera()->setAspectRatio(Ogre::Real(x) / Ogre::Real(y));
Ogre::TexturePtr tex = Ogre::TextureManager::getSingleton().getByName(textureName.Get().toStdString());
if (tex.isNull())
{
tex = Ogre::TextureManager::getSingleton().createManual(textureName.Get().toStdString(),
Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME, Ogre::TEX_TYPE_2D, x, y, 0,
Ogre::PF_A8R8G8B8, Ogre::TU_RENDERTARGET);
}
Ogre::RenderTexture *render_texture = tex->getBuffer()->getRenderTarget();
if (render_texture)
{
render_texture->removeAllViewports();
Ogre::Viewport *vp = 0;
vp = render_texture->addViewport(ec_camera->GetCamera());
// Exclude ui overlays
vp->setOverlaysEnabled(false);
// Exclude highlight mesh from rendering
vp->setVisibilityMask(0x2);
render_texture->update(false);
tex->getBuffer()->getRenderTarget()->setAutoUpdated(false);
}
else
LogError("render target texture getting failed.");
//create material to show the texture
material_name_ = textureName.Get().toStdString() + "_mat"; //renderer_.lock()->GetUniqueObjectName("EC_BillboardWidget_mat");
OgreRenderer::CloneMaterial("HoveringText", material_name_); //would LitTextured be the right thing? XXX \todo
Ogre::MaterialManager &material_manager = Ogre::MaterialManager::getSingleton();
Ogre::MaterialPtr material = material_manager.getByName(material_name_);
OgreRenderer::SetTextureUnitOnMaterial(material, textureName.Get().toStdString());
}
开发者ID:Pouique,项目名称:naali,代码行数:51,代码来源:EC_RttTarget.cpp
注:本文中的ogre::Viewport类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论