Ogre最简单的系统

【Ogre编程入门与进阶】第一章 Ogre3D概述 1.1 什么是Ogre 如果第一次接触Ogre,相信不少读者会像笔者曾经一样,不认识这个英文单词。翻开字典,我们可以查阅到,Ogre这个英文单词的读音是:['əugə],翻译成中文是食人魔、怪兽的意思,而且它还是Object-oriented Rendering Engine(面向对象的图形引擎)的首字母组合。因此,Ogre官方将它的Logo图标设定为了一个可爱的绿色食人魔,如下 阅读详情

OgreSDK的环境配置这里不谈,大家可以在网上找到很多文章

这里只列出构建一个Ogre最最简单的系统所需要的代码


/* ===================================================== */
//	
//    ◢█████◣               ◢██████◣
// ◢◤             ◥◣         ◢◤             ◥◣ 
// ◤                 ◥◣     ◢◤                 █ 
// ▎      ◢█◣       ◥◣◢◤       ◢█◣       █
// ◣     ◢◤  ◥◣               ◢◣   ◥◣   ◢ 
// ◥██◤   ◢◤                   ◥◣   ◥█◤
//          █   ●               ●    █ 
//          █   〃       ▄       〃   █ 
//           ◥◣       ╚╩╝       ◢◤ 
//             ◥█▅▃▃   ▃▃▅█◤ 
//               ◢◤       ◥◣  
//               █           █  
//             ◢◤▕       ▎◥◣
//           ▕▃◣◢▅▅▅◣◢▃▎
//            
//                 Author : Wangxu
//            Create Date :				
//            Description : 
//
/* ===================================================== */	

#pragma warning(disable: 4251)
#pragma warning(disable: 4193)
#pragma warning(disable: 4275)

#include <Ogre/Ogre.h>

// 链接基本的类和函数
#pragma comment(lib,"OgreMain_d.lib")
using namespace Ogre;


int WINAPI WinMain( __in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in LPSTR lpCmdLine, __in int nShowCmd )
{
	// 构造一个Root类,使用min_plugins.cfg作为插件的配置文件
	Root* root = new Root("min_plugins.cfg");
	// 弹出设置对话框
	if(!root->showConfigDialog())
	{
		return -1;
	}
	// 初始化,创建显示窗口
	RenderWindow* window = root->initialise(true);
	// 得到场景管理器
	SceneManager* sceneMgr = root->createSceneManager(ST_GENERIC);
	// 得到摄像机
	Camera* cam = sceneMgr->createCamera("MainCamera");
	// 得到与该摄像机和窗口关联的视口
	Viewport* viewport = window->addViewport(cam);
	// 设置摄像机的基本属性
	cam->setAspectRatio((Ogre::Real)viewport->getActualWidth() / (Ogre::Real)viewport->getActualHeight());
	cam->setNearClipDistance(5);
	cam->setPosition(0,0,600);

	// 显示窗口,开始渲染,进入无限循环
	root->startRendering();

	return 0;
}

配置文件:min_plugins.cfg

# Defines plugins to load
# Define plugin folder
PluginFolder=.
# Define plugins
Plugin=RenderSystem_Direct3D9_d


OGRE与Qt的结合(一)----使用OGRE渲染QWidget 最近几天开始重新学习Ogre,这次从源码编译了Ogre2.1,编译过程基本跟Ogre1.8.1类似,连第三方依赖库都是用的官网推荐的以前版本的,此处不多说了,网上有很多教程,现在给出下载连接。          Ogre2.1的源码:  https://bitbucket.org/sinbad/ogre/branch/v2-1          Dependencies: https://bi 阅读详情

相关推荐

Ogre学习记录

  1: 设计初衷它设计初衷是完全跨平台的。抽象的接口隐藏了平台相关的细节。它设计初衷是大幅度支持扩展的。支持多种场景类型,独立出平台和3D接口限制。2: 基本类结构关系Roo:对象为一切的入口,它负责创建Ogre的所有基础元素,三大基础元素大致包括:场景管理器,绘制系统,资源管理器。场景管理器:场景节点,动态对象。资源管理器:资源组管理,资源管理渲染模块:硬件缓冲

英雄王之路 4979

OGRE渲染引擎之创建OGRE项目

本文翻译自OGRE 1.12.0 notes: 有关如何构建OGRE本身的说明,请参阅GORE构建指南 CMake Configure(配置) Ogre使用CMake作为其构建系统。建议你也在项目中使用它。然后你只需要在你的项目中添加以下行 # specify which version and components you need() find_package(OGRE 1.11 ...

Estelle 2303

三维引擎实践 - 在Windows上用CMake, VS2022编译Ogre, Ogre-Next

编译Ogre-next , Ogre

GPU全栈博主 1850

Ogre文件系统

二、文件容器和文件管理 OGRE 文件系统的核心是 Archive 和 DataStream。其中:Archive 泛指文件容器,可以是文件夹,也可以是压缩包,甚至可以为远程位置(Ogre1.06 还未发现有此功能)。 DataStream 完成与 std::basic_istream 相同的功能,它既可以读取普通的文件,压缩文件,以及内存文件等。     1、Archive  为完成

damenhanter的专栏 1688

【低空经济】无人机充电站设计方案

随着无人机技术的快速发展和广泛应用,其在物流、农业、巡检、救援等领域的应用日益普及。然而,无人机的续航能力一直是限制其大规模应用的关键因素之一。为了解决这一问题,无人机充电站的设计与建设显得尤为重要。本项目旨在设计一套高效、智能、可扩展的无人机充电站系统,以满足不同场景下无人机的充电需求,提升其作业效率和应用范围。无人机充电站的设计将围绕以下几个核心目标展开:首先,充电站应具备快速充电能力,以减少无人机的停机时间,提高作业效率;

2960

AI Agent在保险行业落地:从智能客服到核保理赔的实践路径

AI Agent作为大模型技术的核心应用形态,正从通用对话走向垂直行业深度落地。其本质是让机器理解自然语言、处理非结构化文档,并在复杂业务流程中辅助人类完成信息抽取、内容生成与多轮交互。在保险这一强监管、高客单价的行业中,智能客服与销售助手率先验证了降本增效的价值,核保与理赔环节则进一步展示了AI在文档理解与风控辅助上的高价值潜力。从技术原理到商业闭环,垂直场景正在成为AI应用的主战场。本文以保险行业为样本,剖析AI Agent如何嵌入真实业务流程,梳理可复用的三阶段落地路径,为企业在医疗、金融等类似高文本

weixin_29039773的博客 365

Ogre换装系统

Ogre character customize

FadeIn 6182

用UDP协议在dos命令行里模拟一个聊天程序

/* 需求: 在dos命令行里模拟一个聊天程序 有收数据的部分,和发数据的部分,这两部分需要同时执行。 那就需要用到多线程技术。 一个线程控制收,一个线程控制发。 */ import java.io.*; import java.net.*; class C

s_x_x的记录 1955

OGRE渲染引擎

这篇文章简单介绍了OGRE,并介绍了OGRE中的基本类

Estelle 3579

IBM Storwize V3700存储维护实战:硬盘更换、电源模块热插拔与带外管理IP配置

在企业IT基础设施中,存储阵列是数据持久化的核心组件,其稳定运行直接关系到业务连续性。存储阵列通常采用RAID技术实现数据冗余,并通过热插拔、冗余电源等设计保障高可用性。带外管理则提供了独立于业务网络的硬件级监控与管理通道,是运维的关键手段。本次实战以一台IBM Storwize V3700存储阵列为例,详细记录了在业务低峰期,依据严谨的操作流程,对出现SMART预警的硬盘进行在线更换,并对有异响的冗余电源模块实施热插拔更换。针对管理界面强制要求设置VIP才能配置带外管理地址的限制,文章提供了通过SSH命令

weixin_29172963的博客 303

三相SVPWM逆变器双闭环PI解耦控制:从dq坐标系到参数整定实战

本文深入解析了三相SVPWM逆变器的双闭环PI解耦控制技术。通过引入dq坐标系,将交流量转换为直流量,并结合前馈补偿实现电流环的解耦控制。文章详细阐述了从数学模型推导、控制器设计到参数整定与SVPWM实现的完整流程,为工程师提供了从理论到实战的系统性指导。

weixin_28292761的博客 405

Ogre学习教程:Ogre1.8.1+VS2010环境配置

“伟大航路,我把世界上的一切都放在了那里,有种的话就去领取吧” 这是OGRE中文网的一则广告,我想,无论作为OGRE的学习者还是漫漫人生的一名旅人,这句话都是非常不错的激励语。放在这,是否能够让你隐约看到属于自己的新世界? Ogre(Object-oriented Graphics Rendering Engine)是一款优秀的C++开源图形渲染引擎。OGRE主要提供渲染引擎,

小熊不去实验室 1万+

【python科研数据处理】将Endnote自动搜索的所有pdf文件,全都移动指定文件夹中

将Endnote自动搜索到的全部pdf文件,全都移动指定文件夹中1 背景2 问题解决 手动反爬虫,禁止转载:原博地址 https://blog.youkuaiyun.com/lys_828/article/details/122370892(优快云博主:Be_melting) 知识梳理不易,请尊重劳动成果,文章仅发布在优快云网站上,在其他网站看到该博文均属于未经作者授权的恶意爬取信息 1 背景 在进行期末考试周后,面对最后一门功课,需要提交至少80篇SCI参考文献,因此最快下载文献的方式就是通过Web of S

lys_828的博客 1827

Ogre学习教程:Ogre第一个程序

1. 已经安装了Ogre工程向导,VS2010 新建项目就可以看得OGRE的工程模版了,建立一个空项目,由于安装了Orge工程助手,所以免去了麻烦的配置过程(安装Orge工程助手步骤可以参考 Ogre1.8.1+VS2010环境配置): 2. 首先在项目中建立一个OgreDemo1.c和OgreDemo1.h文件。分别填入如下代码: OgreDemo1.h:

小熊不去实验室 1万+

Windows部署OpenClaw报错不断?这篇环境配置指南帮你解决难题

想在Windows上部署OpenClaw却频频报错?🔧 本文详细梳理了OpenClaw部署必需环境的安装步骤和官方下载地址 📦,提供完整的验证清单和常见问题排查方法,帮你一次性搞定所有环境配置,顺利部署OpenClaw ✅

XiaoqiangClub的博客 6652

龙芯2K1000 OTG双模驱动深度解析

是Synopsys公司开发的USB 2.0 OTG控制器IP核,龙芯2K1000内置该IP,作为唯一的OTG控制器(PCI Dev4 Func0),物理基地址0x40000000。核心能力:同时支持Host主机模式(接U盘/键盘)、Device设备模式(虚拟串口ttyGS0)、OTG双模自动切换速率驱动路径:内核源码PMON:启用otg0设备树内核:开启HOSTPERIPHERALG_SERIAL启动参数脚本:sysfs角色切换+开机自启Host按以上配置,龙芯2K1000 DWC2 OTG可完美实现。

weixin_44932366的博客 376

【Ogre编程入门与进阶】第五章 Ogre初步

转载请说明出处! http://blog.youkuaiyun.com/zhanghua1816/article/details/8087373 在这一章中,我们会通过一些简单通俗的介绍,并结合一些例子,向读者展现一些Ogre3D简单的功能和使用方法。在这一章中,我们不会讲解太复杂的Ogre功能,笔者认为在本书的最开始介绍的过于复杂不仅会让读者一头雾水,更会让读者对Ogre的学习望而却步,所以,不

Everything is possible 8289

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

OGRE HelloWorld——MiniSample

OGRE的ExampleApplication比较繁琐,这里演示一个精简的例子。没有进行任何3D对象的创建。

shaoxiaoning的专栏 3151

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

OGRE学习之创建OGRE指南

本文翻译自OGRE 1.12.0官网 OGRE支持在所有平台上使用CMake作为其构建系统。这篇文章将向您解释怎样使用CMake从源代码构建Ogre。你需要一个>=3,。3版本的CMake。 What is CMake? CMake是一个跨平台的构建系统,或者更准确的说是构建配置器。它是一个程序,从一组CMake脚本为你的平台创建一个本级构建系统,允许你构建Ogre。构建过程可以通过C...

Estelle 1450

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

OGRE

News About Download Developers Documentation Support Gallery Download OGRE from: http://ww

凌风探梅的专栏 1843

《Ogre一步一步学开发》 三、第一个Ogre 1.12 程序

三、第一个Ogre 1.12程序 Ogre1.7-1.9均为32位系统开发软件,网上存在大量Ogre教程均是以32位为例进行讲解的。从1.10开始,Ogre进入64位,开发环境的改变造成教程文章的缺失,本人本着边搜集,边整理的原则,以Ogre1.12.1SDK为例制作本教程。操作系统为 Windows 10 专业版,Microsoft Visual Studio 2017开发环境。 下载Ogre...

StudyOgre的博客 1519

OGRE最简单的射线拾取详解

上一篇文章解决了鼠标的问题,那么现在可以开始研究OGRE的鼠标拾取了。射线拾取原理是从摄像机发射一条经过鼠标位置的射线,计算射线和哪些三角形相交,然后计算这些三角形所属的场景对象(可以是Entity,Light,平面等等)OGRE已经帮我们实现了基本的功能。在这里实现的是最简单的鼠标射线拾取。bool GuiFrameListener::mousePressed( const OI

lsldd的专栏 8183

OGRE粒子系统简介

1,粒子系统介绍 每个引擎都会有自己的粒子系统,粒子系统特效在游戏中运用广泛,比如射击类游戏中的爆炸特效,烟雾特效,开枪时喷出的火焰,撞击时击出的火花等等多半由粒子系统实现。粒子系统的基本单元是粒子,每个粒子一般具有形状、大小、颜色、透明度、位置、速度、加速度、方向、生命周期等属性。每一帧,粒子系统一般都会执行如下步骤: 1) ...

weixin_30663391的博客 398

OGRE3D 渲染系统线程化

译者序:偶然在网上看到这篇文章,自己很想仔细研究一下。但搜寻半天不见中文版。于是自己斗胆翻译了一下。文中不免有漏洞百出,甚至可以说有些地方不及Google翻译得好。但这样总的来说是出了一个中文版,而我自己在翻译过程中也会停下来仔细思考。 OGRE这个线程化的文章很老了。因为OGRE目前已经支持多线程渲染。 这篇文章貌似是某些人研究出来的三个线程化方案,并给出了测试结果。以向OGRE社区证明线程化方案的可行性。 对于许多想研究渲染线程化的人来说,是一篇值得参考的文章。文中提出了许多在不同情况下线程化时遇

BoYueJiang's Zone 2441

ogre核心对象

请注意,由于屏幕的纵横比通常为 1.3333 : 1(宽度 : 高度),因此尺寸为 (0.25, 0.25) 的元素不会是正方形的,但按面积计算,它将正好占据屏幕的 1/16。也就是说,你不要告诉 OGRE“设置这些渲染状态,然后渲染 3 个多边形”,你告诉它“我想要一个对象,这里,这里和这里,上面有这些材质,从这个视图渲染”,然后让它继续下去。在示例应用程序中,我选择将 Root 的实例作为我的应用程序对象的成员,这确保了在我的应用程序对象创建后立即创建它,并在删除应用程序对象时将其删除。

ko4444的博客 1027
上一篇: realloc,calloc和HeapReAlloc区别
下一篇: 在Ogre中使用OIS相应键盘事件
RabbitLBJ
博客等级 码龄18年 46粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值