问题标签 [rendering-engine]
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.
browser - 互联网浏览器使用什么进行渲染?
非常快的一个,我一直在想,互联网浏览器是使用渲染 OS API 函数来创建按钮、渲染法师等,还是它们自己渲染它们?
我一开始以为是系统api,但是有一些效果,比如屏幕变灰,中间只看到一个小窗口,你知道,网上很多相册都有这个效果,我真的不知道如何使用例如只有 Win32 调用。
编辑:更准确地说,我知道屏幕上的最终绘图将始终使用系统 API,但您可以根据需要发送预渲染图像。谢谢。
android - 你知道一个好的android渲染引擎吗?
什么是渲染引擎?有安卓的吗?
c++ - 适用于 Android 的 C++ 渲染或游戏引擎。
我正在开发一个 Android 应用程序,我需要使用渲染引擎来显示我使用 Blend 制作的一些对象。
我想知道是否有 C++ 游戏引擎或渲染引擎来显示我的模型。
有人吗?
谢谢。
android - 我对我必须做什么感到困惑(android 渲染引擎)
我正在使用 OpenGL 开发一个 Android 应用程序。
我对 Android 和 OpenGL 很陌生,而且我的英语很差。昨天我获得了-4 分,因为我没有正确解释某些事情。
我将尝试解释我的问题:
我必须在屏幕上显示多个 3D 对象,例如一个立方体和一个球体。我将要使用的对象会更复杂。
现在,我可以按照本教程完美地显示一个 2D 对象,但我不知道如何显示 3D 对象,也不能超过一个。
我使用 Blender 为 3D 对象建模。我想在我的应用程序中使用这些模型。
我在这里找到了 Wavefront OBJ 格式的 Java 加载器。现在我可以将我的模型导出为该格式,然后将其导入我的 Android 应用程序。
有人告诉我一些关于使用渲染引擎的事情。但我不知道什么是渲染引擎。
但我有一些限制:
我还在使用使用 OpenGL 的本机 C++ SDK。如果我要使用 Java 渲染引擎,我需要将数据(可见目标、投影和姿势矩阵等)从本机传递到 Java。为此,我将使用 JNI(Java 本机接口)。
如果需要根据设备创建具有特定参数的 OpenGL 上下文,则使用本机 C++ SDK 需要考虑的另一件事。您需要确保我的渲染引擎允许外部源设置 GL 上下文,或者自己将适当的设置传递给引擎。
换句话说,我输了。
如果您需要更多详细信息,请告诉我。
我的问题是,如果我使用 blender 对一些对象进行建模,我如何在 Android 上显示这些对象?我需要渲染引擎吗?Java 还是 C++ 渲染引擎?
如果您知道书籍、教程或示例,请告诉我。
谢谢。
opengl - GLSL 中的顶点着色器属性映射
我正在使用 GLSL 着色器编写一个小型渲染引擎:
每个网格(嗯,子网格)都有许多顶点流(例如位置、法线、纹理、切线等)到一个大 VBO 和一个 MaterialID。
每个材质都有一组纹理和属性(例如镜面反射颜色、漫反射颜色、颜色纹理、法线贴图等)
然后我有一个 GLSL 着色器,带有它的制服和属性。比方说:
我有点卡在尝试为 GLSL 着色器设计一种方法来定义属性和制服的流映射(语义),然后将顶点流绑定到适当的属性。
对网格说的话:“将您的位置流放在属性“Position”中,将您的tex坐标放在“TexCoord”中。还将材质的漫反射颜色放在“DiffuseColor”中,将材质的第二个纹理放在“NormalMapTexture”中
目前我正在使用硬编码的属性名称(即顶点位置始终是“位置”等)并检查每个统一和属性名称以了解着色器使用它的目的。
我想我正在寻找某种创建“顶点声明”的方法,但也包括制服和纹理。
所以我只是想知道人们如何在大型渲染引擎中做到这一点。
编辑:
回顾建议的方法:
1. 属性/统一语义由变量的名称给出 (我现在正在做的)为每个可能的属性使用预定义的名称。GLSL 绑定器将查询每个属性的名称并根据变量名:
2. 每个语义的预定义位置
GLSL binder 将始终将顶点数组绑定到相同的位置。由着色器使用适当的名称进行匹配。(这似乎与方法 1 非常相似,但除非我误解了,这意味着绑定所有可用的顶点数据,即使着色器不使用它)
3. 材质、引擎全局、渲染器和网格的可用属性字典
维护由活动材质、引擎全局变量、当前渲染器和当前场景节点发布的可用属性列表。
例如:
然后在着色器中:
将顶点数据绑定到着色器时,GLSL 绑定器将遍历属性并绑定到字典中找到(或未找到?)的属性:
和制服一样,只查询活动材质和全局。
asp.net - ASP.NET Webforms 如何决定控件的 HTML 名称?
在 ASP.NET Web 表单中,当在页面上呈现控件时,每个字段的 ID 都会根据需要使用 ctrl01 进行修改,以确保不会发生冲突(又名 myField 变为 ctrl01$myField 或诸如此类)。
我想知道在哪里可以找到有关算法本身如何工作的详细信息,或者我可以在哪里找到它。我假设 INamingContainer 与此有关 - 但可惜我找不到实际决定渲染字段名称的部分。
任何帮助都是极好的!
mobile-website - 用于呈现丰富网页内容的移动设备检测
迄今为止最具网络功能的手机是什么(型号和/或用户代理)和
在尝试确定它们是否将处理丰富的移动定制网站时,应评估哪些规则?
我正在开发一个移动网站,目前正在进行一些用户代理检测,以确定移动设备是否应该看到完全增强的 js、jquery mobile、css 视图或纯后备视图。
这是我目前对我的两个问题的回答,我想要一些关于如何改进的输入/建议 - 这种过滤是从上到下评估的:
如果用户代理包含以下内容,则增强视图:“iPhone”、“iPad”、“Android 3”、“Android 2”、“MSIE 9”、“MSIE 8”、“MSIE 7”、“Windows Phone OS 7”、 “IEMobile/7”、“BlackBerry99”、“BlackBerry 9800”、“BlackBerry 平板电脑”
如果用户代理包含以下内容,则后备视图:“Android 1”、“MSIE 6”、“MSIE 5”、“MSIE 4”、“MSIE 3”,然后有一大堆旧的黑莓 UA,即“BlackBerry8”和较旧的 Opera Mini 版本,即“Opera Mini/3”...
如果发现是 Web 浏览器,则增强视图(也有助于测试原因)。这再次由用户代理规则确定。
然后在 WURFL API 中加载(并找到)用户代理并且发现发布日期太旧时的后备视图。目前我认为这是在 2007 年之前。
然后当 WURFL device_os 功能显示带有 device_os_version 功能“5”或“6”的“Windows Mobile OS”时的后备视图。
然后增强视图无法确定他们正在使用什么,因此提供最佳体验(这将迎合新发布的手机)
按照这种设置方式,最好找到排除设备的原因而不是包含设备,因为最后一个条件将返回增强视图。
javascript - 如何在javascript中检测浏览器渲染引擎?
我读了一本名为“面向 Web 开发人员的专业 Javascript 第 2 版”的书,它指出此代码可以检测浏览器渲染引擎:
但它似乎不起作用,那么这段代码如何检测浏览器渲染引擎?谢谢
c++ - 在OpenGL中处理顶点的最佳技术?C++
我正在为 Quake 实现一个地图渲染器。我目前正在遍历顶点数组并一次发送一个。有人告诉我,通过使用顶点数组,我可以通过批量发送顶点来大大加快渲染过程。现在,我刚刚查看了显示列表,最后查看了 VBO 或顶点缓冲区对象。VBO 提到了与客户端/服务器通信相关的巨大优势。如果我只是要开发客户端而不是服务器,VBO 是否仍然适用于我正在做的事情?
目前在 OpenGL 频谱中使用哪些游戏来进行快速顶点处理?
performance - 我应该为 node.js 使用哪个渲染/模板引擎?
现在,我在节点的 express 中使用 jqtpl。但是,我的同事说在负载测试下它占用了大量内存。
所以:
是快递还是渲染引擎的问题?我应该做任何配置(如视图缓存)来减少内存使用吗?
不同渲染引擎的特点是什么?例如玉,jqtpl,ejs ...等
请指教。