小编The*_*ler的帖子

如何查找某种类型的所有资产?

在我的Unity项目中,有一个ArmourType类的实例(这些是资产,可编写脚本的对象).我试图在检查器的下拉列表中显示这些,这是有效的.但是,我用

List<ArmourType> armourTypes = Resources.FindObjectsOfTypeAll<ArmourType>();
Run Code Online (Sandbox Code Playgroud)

找到所有这些实例.这只会查找加载到内存中的对象,因此偶尔只能找到一些必需的资源.这是记录在案的,所以不是一个错误,但有时非常烦人.

所以我的问题是,是否有一种不同的方式来获取所有这些资产,确实返回那些未加载到内存中的资产?或者有没有办法让Unity在寻找资源时加载资产?

注意:我正在使用Unity5和c#.

c# unity-game-engine

9
推荐指数
1
解决办法
6732
查看次数

在我的浅水实施中奇怪的振荡波纹

我一直在尝试在Unity中实现浅水方程,但我遇到了一个奇怪的错误.我在水中得到了这些奇怪的摆动涟漪.我做了一些截图:

在此输入图像描述 在此输入图像描述

您可以在此处找到视频:https://www.youtube.com/watch?v = crXLrvETdjA

我的代码基于Xing Mei的GPU快速水力侵蚀模拟和可视化.你可以在这里找到整个解算器代码:http://pastebin.com/JktpizHW(或见下文.)每次我使用论文中的公式时,我都会将其编号添加为注释.

我尝试了不同的时间步,对于我使用0.02的视频,降低它只是让它振荡得更慢.我也尝试了一个更大的网格(视频使用100,我尝试了200但是涟漪只是更小.)我检查了所有公式几次,并且找不到任何错误.

这里的任何人都可以弄清楚出了什么问题?

额外信息:

从pastebin中可以看出,我用c#编写了它.我使用Unity作为我的可视化引擎,我只是使用网格网来显示水.我改变网格的顶点y分量以匹配我计算的高度.

DoUpdate方法获取一个float[][] lowerLayersHeight参数,该参数基本上是水下地形的高度.在视频中它就是全部0.

public override void DoUpdate(float dt, float dx, float[][] lowerLayersHeight) {
        int x, y;
        float totalHeight, dhL, dhR, dhT, dhB;
        float dt_A_g_l = dt * _A * g / dx; //all constants for equation 2
        float K; // scaling factor for the out?ow ?ux
        float dV;

        for (x=1 ; x <= N ; x++ ) { …
Run Code Online (Sandbox Code Playgroud)

c# fluid-dynamics

7
推荐指数
1
解决办法
684
查看次数

SelectTokens中的JSON.Net"无法读取查询运算符"

我正在尝试使用JSON.Net中的SelectTokens方法从magicthegathering.io获得的一些JSON中获取一些信息.但是,当我尝试这样做时,我收到错误"无法读取查询运算符".

这是我正在使用的代码:

JToken jtoken = JToken.Parse(
    @"{""cards"":[{""name"":""Krark-Clan Engineers"",""manaCost"":""{3}{R}"",""cmc"":4,""colors"":[""Red""],""type"":""Creature — Goblin Artificer"",""types"":[""Creature""],""subtypes"":[""Goblin"",""Artificer""],""rarity"":""Uncommon"",""set"":""5DN"",""text"":""{R}, Sacrifice two artifacts: Destroy target artifact."",""flavor"":""\""Well, I jammed the whatsit into the whackdoodle, but I think I broke the thingamajigger.\"""",""artist"":""Pete Venters"",""number"":""70"",""power"":""2"",""toughness"":""2"",""layout"":""normal"",""multiverseid"":50201,""imageUrl"":""http://gatherer.wizards.com/Handlers/Image.ashx?multiverseid=50201&type=card"",""foreignNames"":[{""name"":""???????"",""language"":""Chinese Simplified"",""multiverseid"":81620},{""name"":""Ingénieurs du clan Krark"",""language"":""French"",""multiverseid"":80795},{""name"":""Ingenieure des Krark-Clans"",""language"":""German"",""multiverseid"":80960},{""name"":""Ingegneri di Krark-Clan"",""language"":""Italian"",""multiverseid"":81290},{""name"":""????????"",""language"":""Japanese"",""multiverseid"":80630},{""name"":""Engenheiros do Clã-de-Krark"",""language"":""Portuguese (Brazil)"",""multiverseid"":81455},{""name"":""Ingenieros del clan Krark"",""language"":""Spanish"",""multiverseid"":81125}],""printings"":[""5DN""],""originalText"":""{R}, Sacrifice two artifacts: Destroy target artifact."",""originalType"":""Creature — Goblin Artificer"",""legalities"":[{""format"":""Commander"",""legality"":""Legal""},{""format"":""Freeform"",""legality"":""Legal""},{""format"":""Legacy"",""legality"":""Legal""},{""format"":""Mirrodin Block"",""legality"":""Legal""},{""format"":""Modern"",""legality"":""Legal""},{""format"":""Prismatic"",""legality"":""Legal""},{""format"":""Singleton 100"",""legality"":""Legal""},{""format"":""Tribal Wars Legacy"",""legality"":""Legal""},{""format"":""Vintage"",""legality"":""Legal""}],""id"":""a4d05fd27ec5d7df470e91218f1ca885eda4f0c6""}]}"
);

var foundTokens = jtoken.SelectTokens(@"$..cards[?(@.name=""Krark - Clan Engineers"")].imageUrl", true);
if (foundTokens.Any())
{
    string selected = …
Run Code Online (Sandbox Code Playgroud)

json.net jsonpath

7
推荐指数
1
解决办法
712
查看次数

使用elm-reactor和Elm嵌入HTML?

所以我一起尝试Elm和WebRTC.但是对于WebRTC,我需要一些互操作到javascript.所以我为WebRTC和main.js创建了一个带有所需脚本包含的index.html.

但是,我正在使用榆树反应堆.哪个超级好看.但是没有main.js. 我可以用elm-make创建它,但是我必须手动更新它.

那么,有没有办法让榆树反应堆与嵌入式榆树一起工作?

注意:我正在使用Elm 0.18,最新的写作.

elm elm-reactor

7
推荐指数
2
解决办法
1020
查看次数

榆树:如何合并两个词典?

我有两本词典,它们的价值观可以影响神奇宝贝攻击的类型效果.现在我想将这些结合起来以获得综合效果.

例如,一本字典有:

 normal -> 0.5
 fire -> 2
Run Code Online (Sandbox Code Playgroud)

另一个有:

 water-> 0.5
 fire -> 2
Run Code Online (Sandbox Code Playgroud)

合并后将是:

 normal -> 0.5
 water-> 0.5
 fire -> 4
Run Code Online (Sandbox Code Playgroud)

我找到了一个dict函数,名为merge:https://package.elm-lang.org/packages/elm/core/1.0.2/Dict#merge,但无法弄清楚如何使用它,我也找不到例.

那么,你如何使用Dict.merge?你能提供一个例子吗?

dictionary elm

7
推荐指数
1
解决办法
297
查看次数

Google Closure Annotating不会告诉我我错了

我正在尝试使用Google Closure,特别是用于强制类型安全的注释内容.为了测试我做错了什么,虽然编译器不会告诉我它是......

这是代码:

// ==ClosureCompiler==
// @output_file_name default.js
// @compilation_level SIMPLE_OPTIMIZATIONS
// ==/ClosureCompiler==

/**
 * A card.
 * @constructor
 * @param {String} cardName The exact name of the card
 * @param {Kinetic.Layer} layer The layer for the card
 */
function CardObject(cardName, layer)
{
    /** @type {Number} */
    var number = cardName;
}
Run Code Online (Sandbox Code Playgroud)

所以,我有一个变量number,我说是一个Number,我尝试为它分配一个字符串.这不应该是可能的,对吗?虽然编译器不会告诉我......

为什么不告诉我这是错的?

javascript compiler-warnings google-closure google-closure-compiler

6
推荐指数
1
解决办法
911
查看次数

谷歌飞镖地区?

在c#中有一些称为区域的东西,这对于构造代码很有用.我想知道Google Dart是否有类似内容?

谢谢!

-Pablo

region dart

6
推荐指数
2
解决办法
666
查看次数

Unity Serializable 类自定义检查器

我有一个非常简单的统一类 UnitRange(具有最小和最大范围)。

[System.Serializable]
public class UnitRange {
    public int Minimum;
    public int Maximum;
}
Run Code Online (Sandbox Code Playgroud)

这会显示在检查器中(如果我创建了这种类型的公共变量。)虽然它的默认显示方式不是很好:

在此处输入图片说明

现在,我想知道如何改变这种情况?我找到了如何更改 monobehaviours 的检查员,但找不到如何更改其他类的。我希望它只是两个相邻的数字,如下所示:

在此处输入图片说明

这只是一件小事,如果不可能,也不是什么大问题,尽管知道如何以后也可以证明更有用。

哦,是的,正如您可能已经注意到的那样,我使用的是 c#,所以如果任何示例代码都在 c# 中就好了。

谢谢。

c# unity-game-engine inspector

6
推荐指数
1
解决办法
6460
查看次数

最好的.NET阵列/列表

所以,我需要一系列的项目.我想知道哪一个最快/最好用(在c#中),我会做以下事情:

  1. 最后添加元素
  2. 一开始就删除元素
  3. 看第一个和最后一个元素(每一帧)
  4. 偶尔清理它
  5. 将它转换为普通数组(不是列表.我正在使用iTween,它会询问正常的数组.)我几乎每一帧都会这样做.

那么,考虑这些事情最好用什么呢?特别是最后一个,因为我每帧都这样做.我应该只使用一个数组,还是有其他东西可以快速转换为数组,并且在开始和结束时也可以轻松添加/删除元素?

c#

6
推荐指数
1
解决办法
860
查看次数

如何让 VS Code 将没有扩展名的文件视为某种语言?

在工作中有很多没有扩展名的文件。它们都是 COBOL 文件,所以现在我每次打开它们时都会手动更改它们与 COBOL 的关联。但我一直在寻找一种方法,让 VS Code 自动将没有扩展名的文件视为 COBOL。

我知道您可以在设置中添加文件关联,但唯一有效的方法是添加"*": "COBOL",但随后所有内容都被视为 COBOL 文件...我也试过 `"[^.]": "COBOL" 希望正则表达式工作,但没有。

有没有办法做到这一点?

visual-studio-code

6
推荐指数
1
解决办法
1555
查看次数