问题标签 [rajawali]

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.

0 投票
4 回答
1655 浏览

android - 动态壁纸设置不适用

我已将设置添加到我的动态壁纸,但更改时它们不会被应用。如果有人能告诉我为什么我的设置在更改时没有被应用,我将不胜感激。这是我的代码:

设置.xml

设置.java

壁纸.java

渲染器.java

我知道代码很长,但我将非常感谢有人能给我的任何帮助。谢谢你。

0 投票
1 回答
671 浏览

android - 在android渲染中传递模型视图矩阵和投影矩阵值

我正在尝试使用适用于 android 的 Min3d 或 Rajawali 渲染框架来渲染动画模型,但即使在从 QCAR 获取模型视图矩阵和投影矩阵之后,我也不知道如何将它们传递给这些框架,以便它们在现实世界坐标中渲染。任何人都知道如何传递模型视图矩阵和投影矩阵值?我尝试了很多东西,但没有找到解决方案,任何人都可以帮我解决这个问题。任何帮助都将受到欢迎,,, 在此先感谢。

0 投票
1 回答
1354 浏览

android - OpenGL 着色器:如何分别移动每个顶点?

我正在尝试 Android 的 Rajawali 库在场景中绘制一些基本的 3d 对象。有一个样本 2000 个平面,展示了如何使用一个着色器非常“廉价”地渲染大量顶点。我可以将顶点数组传递给着色器并绘制它们。

我想升级这个示例并相互独立地移动一些顶点。

我已经尝试过 glBufferSubData,但我无法更改现场的任何内容。我发现的一种方法是更改​​数据并重新创建缓冲区,但我希望有一种更简单的方法来仅更改必要的数据。

例如,我只想从已经创建和绑定的缓冲区中更改一些位置。

初始化职位

创建缓冲区

设置位置

以及如何修改例如第一个平面的第一个顶点的位置?(planePositions[0] = a;planePositions[1] = b;planePositions[1] = c... 现在我必须将此修改后的数组传递给 opengl 但不知道如何)。

0 投票
1 回答
963 浏览

android - Opengl ES 动态重新加载着色器

我在 android (3d opengl library) 中使用 Rajawali。

我正在尝试重新加载材质(开始动态使用不同的着色器) - 但是当我将新材质(在运行时)设置为对象时,它会消失(通过电源按钮打开/关闭屏幕后,此对象会再次出现新材质)。

设置新材料后,我试图重新加载对象的属性(函数重新加载),但这没有帮助(如果我调用reload()其他对象 - 它们也会消失 =))。

reload()材料(shaders类)中的功能是:

我不明白为什么它们会消失以及为什么在使用新的着色器重新启动后它们又会出现。

0 投票
3 回答
4305 浏览

android - 使用 min3d/Rajawali 框架 (android) 在触摸时围绕 3d 对象旋转

我正在研究一种使用 Min3d/Rajawali 框架围绕 3D 对象旋转相机的算法。

通过我的实现,围绕 X 轴的旋转无法正常工作。我认为该方法setLookAt()无法正常工作。

问题:

当我垂直旋转球体时,我无法完全看到它。例如,转动地球,我无法完全看到南极,因为算法将相机重置为向下。

是否可以在不使用“setLookAt”方法的情况下实现相机围绕对象旋转?

我尝试了不同的解决方案,但无法使其正常工作。

下面是我的代码:

0 投票
2 回答
2579 浏览

android - Rajawali - 从模型 obj 错误加载纹理

我正在尝试制作一个加载 3d 对象的应用程序。

当我加载这个对象(http://rgcouto.net/alexandre/COKE/fineObj/)时,一切正常。截图:http ://rgcouto.net/alexandre/COKE/Screenshot_2013-01-10-15-04-42.png

但是当我尝试加载从搅拌机导出的我的对象(http://rgcouto.net/alexandre/COKE/myObj/)时,纹理没有出现并且对象很暗.. 截图:http ://rgcouto.net /alexandre/COKE/Screenshot_2013-01-10-15-02-27.png

我做错了什么?我必须做什么,才能使我的对象出现纹理?

我的混合文件:http://rgcouto.net/alexandre/COKE/blend/

我的渲染器:

问候亚历克斯

0 投票
2 回答
1896 浏览

android - Android 和行星渲染

我正在学习如何在 android 上进行 3D 开发。我从一个带有一些云的简单旋转行星开始。在过去的两天里,我一直在尝试为地球添加大气辉光。我在网上查看并尝试使用着色器,但无法走远。

我的问题是,实现这一目标的最佳方法是什么?我朝正确的方向轻推可能就是我所需要的。

我附上了一张我目前拥有的星球的截图,以及我为之奋斗的最终目标。

感谢您的任何帮助。

现在的进展:

在此处输入图像描述

最终目标:http: //25.media.tumblr.com/tumblr_m06q7l7BpO1qk01v6o1_500.png

0 投票
1 回答
1593 浏览

android - 将 Rajawali 框架添加到项目时出错

我计划测试 OpenGL 框架 Rajawali。当我按照有关如何设置它的教程进行操作时,我会执行以下操作:

  1. 创建一个安卓项目。
  2. 导入 Rajawali 源代码。一旦完成,我就会收到错误消息:

“对于 WallpaperService.Engine Wallpaper.java /Rajawali-master/src/rajawali/wallpaper line 312 类型,方法 setOffsetNotificationsEnabled(boolean) 未定义”。

“Wallpaper.WallpaperEngine 类型的方法 setOffsetNotificationsEnabled(boolean) 必须覆盖或实现超类型方法 Wallpaper.java /Rajawali-master/src/rajawali/wallpaper line 310”。

  1. 当我尝试将 Rajawali 项目与我创建的项目链接时,出现错误:

容器“Android Dependencies”引用了不存在的库“D:\Prosjekter\Rajawij\Rajawali-master\bin\rajawali-master.jar”。

“在解决构建路径错误之前无法构建项目”。<--- 我猜应该在其他错误得到修复后立即消失。

任何人都有 Rajawali 的经验或对我如何解决问题有想法?

谢谢你的帮助!

0 投票
2 回答
220 浏览

android - 进行过多的转换“onDrawFrame”会产生滞后吗?

我正在使用 Rajawali 框架制作基于 OpenGL ES 的动态壁纸。为了实现我的许多动画效果,我创建了一些从 onDrawFrame 方法调用的函数。这些函数从简单的 x,y,z 旋转到带有模拟风或其他随机运动的条件语句的更复杂的方程。它目前运行良好,并且响应速度非常快,尤其是在睡眠和唤醒设备时。

随着我的动态壁纸变得越来越复杂,我担心我的粗略解决方案最终会开始导致性能问题。是这样吗?

有没有更好的方法来进行这些类型的循环或重复更改,比如制​​作后台线程?

0 投票
1 回答
459 浏览

android - 动画纹理坐标不起作用

我正在努力学习 GLSL ES,以便我可以将一堆动画从 CPU 卸载到 GPU。我的问题是创建一个使用精灵表的简单动画着色器。着色器根本不使用灯光,我只显示完整的纹理值以保持非常基本的内容。我选择的 OpenGL ES 框架是 Rajawali,所以我的一些值和参数是从这些类中提取的。

当我使用此着色器时isAnimated = false,纹理会按预期应用。但是,当isAnimated = true模型全黑时,就好像没有应用纹理一样。

我能够确认顶点和片段着色器正在评估ifdef ANIMATEDtrue,所以这似乎是我的纹理坐标修改引起的问题。

任何帮助是极大的赞赏!

这是我完整的非工作着色器类:

}