问题标签 [ogre]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
graphics - 食人魔材料脚本;我如何给一个技术多个 lod_indexes?
我有一个定义 4 种渲染技术的Ogre材质脚本。1 个使用 GLSL 着色器,然后 3 个仅使用不同分辨率的纹理。
如果显卡支持它,我想无条件地使用 GLSL 着色器,否则其他 3 个纹理取决于相机距离。
目前我的剧本是;
额外的信息
食人魔手册说;
增加索引表示较低级别的详细信息
您可以(并且经常会)将不止一种技术分配给同一个 LOD 索引,这意味着 OGRE 将选择“在同一 LOD 索引中列出的技术中的最佳技术。
OGRE 确定哪个是“最好的”,首先列出哪个。
目前,在我使用的支持 GLSL 版本的机器上,脚本的行为如下;
- Camera > 2000 : 着色器技术
- Camera >1600 <= 2000 : Medium // 这里选择我的“纹理”技术而不是着色器
- 相机 <= 1600 : 高 //
如果我将着色器技术中的 lod 顺序更改为
仅使用最新的 lod_index。
如果我将其更改为
它对我大喊
那么如何指定一种技术来拥有 3 个 lod_indexes?
复制作品;
......但它很丑陋。
c++ - 我需要这个依赖于食人魔的头文件(Qgears)的帮助
我距离编译 Qgears 有 2 个错误。(最终幻想 VII 引擎的破解版)
我弄乱了预处理器来加载食人魔头文件的实际位置。
以下是错误:
这是头文件:
include 中唯一不是 Ogre 头文件的头文件是“map”。
如果有帮助,我在 GNU/Linux 中使用 Code::Blocks IDE/GCC 编译器。(拱)
我不确定即使我修复了这个标题,我想我以后也会有构建错误,但值得一试。
编辑:我添加了分号,头文件中还有一个错误:
qt - 在 Qt 中集成 OGRE 1.7
我需要在 Qt 4 中集成 Ogre 3d。我发现了一些不幸过时的代码和建议。我喜欢这个教程
http://irmatden.developpez.com/tutoriels/qt/integration-ogre-qt/
它适用于 Ogre 1.4.9 (Eihorn),但不适用于最新版本 1.7.0。使用最近的应用程序编译应用程序会导致链接器错误
什么可能导致这种情况,我该如何解决?
windows - 如何在 Ogre 中获得无窗口应用程序?
我正在尝试创建一个无窗口的 Ogre 应用程序,但该应用程序似乎完全忽略了 RenderWindow::setVisible(false) 方法。有没有办法做到这一点?
谢谢托马索_
shader - HLSL 如何在着色器之间传递数据/读取现有颜色值?
我有 2 个 HLSL ps2.0 着色器。简而言之,它们是:
着色器 1
- 读取纹理
- 基于此纹理输出颜色值
着色器 2
- 问题:需要从 Shader 1 中读取颜色
- 输出最终颜色,它是输入颜色的函数
(它们需要是不同的着色器,因为我已经达到了 1 个着色器的最大顶点着色器输出)
我的问题是我无法弄清楚 Shader 2 如何访问现有的片段/像素颜色。
知道如何用 HLSL 做这些事情将解决我的问题;
- 读取现有像素颜色(我认为这是不可能的)
- 将 Shader 1 的结果作为 float4 传递给 Shader 2
- 将着色器 1 的结果渲染为内存中的纹理,并让着色器 2 将其读取到
iphone - 如何为 iphone 构建示例 Ogre / Xcode 模板?
嗨,我已经安装了 Ogre 1.7,复制了 iphone 依赖项,并且该项目正在模拟器中运行,其中包含大约 25 个示例项目。我需要构建一个只有一个示例的模板。你能指导我这样做吗...
ogre - OGRE:非标准分辨率
我正在使用 OGRE 重新渲染具有宽宽比(大约 1.85)的电影。默认情况下,OGRE 对话框似乎显示标准的全屏分辨率(800/600、1024/768 等),但这些显然具有 1.333 或附近的纵横比。但只要我不运行全屏模式,为什么我应该仅限于这些屏幕尺寸?
我绝对可以更改视口大小,但这会使我以后难以生成视频。
任何的想法?
c++ - 编写一个 3D 渲染浏览器插件
我知道可以为浏览器编写一个插件,让您渲染到浏览器窗口,这样您就可以在浏览器中有效地运行普通应用程序。不使用 JS 或客户端技术,而是一个基本上包装您的应用程序的插件——在我们的例子中是 C++,它使用 DirectX 或 OpenGL 进行 3D 渲染。
我知道我们必须有 IE 和其他浏览器的版本,但这是如何工作的 - 在 Windows 中,我们是通过插件架构获得 HWND 还是更复杂?
您是否必须编写为每个平台编译的插件版本 - Win/Mac/Linux,因为插件是二进制文件,我认为是这种情况,所以您有一个 IE 版本,然后有多个 FF、Chrome 版本, Safari(共享相同的插件设置 IIRC)
使用 FF - 这是一个插件或扩展的例子吗?
我的意思的一个例子是QuakeLive - 在浏览器中进行适当的 3D 渲染。我们实际上使用的是 Ogre(跨平台 C++),但这使用的是 Direct3D/OpenGL,所以它是一回事。
3d - 在 OGRE 中获取对象方向
我有一个有身体和头部的角色。头部作为骨头与身体相连,我已经知道骨头的名字。现在我想得到头部的方向?那可能吗?我试过这个,但它似乎不起作用:
我认为我应该乘以除单位 x 向量之外的其他值,所以我尝试了所有组合。在这种情况下(即史密斯实体),我使用 得到了正确答案-Vector3::UNIT_X
,所以我认为这是正确的解决方案。我尝试了其他实体,但未能得到正确答案。
任何的想法?
com - 使用 Direct3D9 时需要调用 CoInitialize() 吗?
我的理解是因为 D3D 使用的是 COM,所以答案是肯定的。但在 Ogre 渲染引擎中,这似乎从未被调用过。这是罚款还是疏忽——如果是这样,它会产生一些实际后果吗?