- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以,我一直在 Unity 工作,但我决定是时候换成我更了解的东西了:JavaScript。我一直在考虑切换到 Phaser.js,但我有一些关于我什至在 Unity 中遇到的问题的问题,而且我在互联网上搜索时目前没有找到解决方案。我没有代码可以提供,因为我还没有开始在 Phaser 中实际编程,所以我会尽量明确。
我的游戏创意基本上围绕着一些会改变颜色的灯。我的灯 Sprite 看起来相同,但颜色不同,但不完全相同(只有部分颜色不同)。问题是我的游戏有许多不同颜色的灯,并且必须在它们之间进行更改。比如,如果一盏灯是红色的,你点击它,它就会变成绿色。创建和加载这么多看起来几乎相同的 Sprite 似乎是一种不好的做法,我想知道是否有办法通过代码更改 Sprite 或 Sprite 的一部分的颜色。我知道 Phaser 不支持 svg,并且由于性能问题,游戏中的 svg 通常不是一个好主意,但它会节省我很多时间来添加我使用的 Sprite 的生成的 svg 代码并更改填充我想要的部分。
所以,我的问题是:使用多个 sprite 的最佳替代方案(如果有的话)是什么,或者如何更改它们特定部分的颜色?
最佳答案
根据您的灯光 Sprite ,另一种选择是使用 Phaser 的着色功能。
Phaser 中的 sprite 和图像都可以着色,并且由于 Phaser 支持 sprite 分组,即使您只想更改图像的一部分,您也可以轻松地让每个显示的对象由两个 sprite 组成,其中一个是相同的对于所有灯(不变的部分)和另一个也共享但有色的灯。
Phaser 3 example of tinting an image :
this.add.image(300, 300, 'pixel').setTint(0xff0000);
Phaser 3 setTint()
documentation .
Phaser 2 CE example of tinting a sprite ,如果您正在考虑使用此版本:
sprite = game.add.sprite(game.world.centerX, game.world.centerY, 'atlas', 'greenJellyfish0000');
sprite.tint = Math.random() * 0xffffff;
关于sprite - 在移相器中使用几乎相同的 Sprite 的良好做法。使用更多 Sprite 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56509012/
嗨,我正在考虑开发一种文件传输程序,想知道我是否想要尽可能好的加密,我应该使用什么? 我会用 C# 开发它,所以我可以访问 .net 库 :P在我的 usb 上有一个证书来访问服务器是没有问题的,如果
我创建的这个计算两个数组的交集是线性的方法的复杂度(在良好、平均、最差的情况下)? O(n) public void getInt(int[] a,int[] b){ int i=0; int
我已经能够使用 RTCPeerConnection.getStats() API 获得 WebRTC 音频调用的各种统计信息(抖动、RTT、丢包等)。 我需要将整体通话质量评为优秀、良好、一般或差。
基本问题: 如果我正在讲述/修改数据,我应该通过索引硬编码索引访问文件的元素,即 targetFile.getElement(5);通过硬编码标识符(内部翻译成索引),即 target.getElem
在 Linux 上,我想知道要调用什么“C”API 来获取每个 CPU 的统计信息。 我知道并且可以从我的应用程序中读取 /proc/loadavg,但这是系统范围的负载平均值,而不是每个 CPU 的
在客户端浏览器中使用 fetch api,GET 或 POST 没有问题,但 fetch 和 DELETE 有问题。它似乎将 DELETE 请求方法更改为 OPTIONS。 大多数研究表明是一个cor
我是一名优秀的程序员,十分优秀!