这个问题与这里提出的问题非常相似.
我的问题是我有一张地图,如下所示:
此贴图使用2D Perlin噪声制作,然后运行创建的高度图,根据相应元素的高度或坡度为地形中的每个元素指定类型和颜色值,因此非常标准.地图数组是二维的,并且是屏幕尺寸的精确尺寸(像素每像素),所以在我的装备上1200到800代需要大约2秒.
现在放大突出显示的矩形:
显然,随着尺寸的增加,细节也会丢失.这就是问题所在.我想在运行中创建额外的细节,然后在玩家四处移动时将其写入磁盘(播放器只是一个限制在沿网格移动的点).我看到两种方法可以做到这一点,第一个想到我快速实现的方法:
这是从旧地形的采样元素创建的新偏置局部地形的放大视图,其由前一图像中的黄色网格空间(中心的左侧)突出显示.然而,这个系统需要进行大量的修改,例如,如果将一个单元向左和向上移动到黄色网格空间,到海滩区域,地形会完全改变:
因此,为了正常工作你需要做过多的,我想这个词就是插值,以便在玩家移动当地世界需要达到下一个的40个左右网格空间时创建平滑过渡在世界各地.这似乎很复杂,也很不优雅.
第二种方法是将原始地图的网格分解为较小的位,可能将每个方格除以4?我没有实现这一点,我不确定如何以一种实际上会增加细节的方式,但我认为这可能最终成为最佳解决方案.
关于我如何处理这个问题的任何想法?请记住,它必须是本地的和即时的.只是增加地图的分辨率是我想不惜一切代价避免的.
我目前正在使用用 Javascript 编写的 Lambda 函数,该函数设置了 SQS 事件源,以自动从 SQS 队列中提取消息并对消息内容进行一些基本处理。我无法显示代码,但 lambda 函数的执行摘要基本上是:
对于批处理中的每条消息,它作为事件的一部分接收:
getObject
.put
。deleteMessage
.这个 SQS 队列是高容量的,并且批量接收消息,定期积压数百万条消息。Lambda 通常能够扩展以同时处理数十万条消息。这个解决方案过去在其他应用程序中对我来说效果很好,但我现在遇到了以下间歇性错误,随着 Lambda 的扩展,这些错误开始可靠地出现:
[ERROR] [#############] LAMBDA_RUNTIME Failed to post handler success response. Http response code: 400.
Run Code Online (Sandbox Code Playgroud)
我一直无法在任何地方找到有关此错误含义及其原因的任何信息。对于哪些处决遇到它,似乎没有明显的模式。该函数通常能够运行一小段时间而不会遇到错误并扩展到预期水平。但是,正如您所看到的,错误开始突然出现并通过强制其自动缩减来完全破坏 Lambda 吞吐量:
有谁知道这个“LAMBDA_RUNTIME”错误是什么意思以及可能导致它的原因是什么?我的 Lambda 函数运行时是 Node v12。
因此,我在方法中包含以下代码块:(所有变量都是本地的)
// ...
try
{
if (postXml != null)
using (StreamWriter writer = new StreamWriter(req.GetRequestStream()))
writer.Write(postXml.ToString());
}
catch (WebException ex)
{
HttpWebResponse response = ex.Response as HttpWebResponse;
if (response != null)
result = HandleOtherResponse(response, out status);
else result = HandleBadResponse(ex.ToString(), out status);
}
catch (Exception ex)
{
result = HandleBadResponse(ex.ToString(), out status);
}
if (result == null)
{
try
{
HttpWebResponse response = req.GetResponse() as HttpWebResponse;
result = HandleOtherResponse(response, out status);
}
catch (WebException ex)
{
HttpWebResponse response = ex.Response …
Run Code Online (Sandbox Code Playgroud) 我正在考虑将EF 6用于即将在一个非常大的组织中进行的小型项目.拥有POCO业务对象对我来说至关重要,但我可以找到的关于如何使用EF进行POCO的所有选项似乎都依赖于自动生成工具,这些工具试图将整个数据库结构映射到POCO对象.我们有许多数据库,数百个表和数百个视图,我只想暂时使用其中的一些表(任何一个项目都只希望使用它们中的一小部分).
另外,我不希望必须映射出许多外来属性,甚至是这些表存储的一些常规属性.所以我真的想手工制作这些POCO对象,然后将它们连接到EF并让它进行映射 - 我仍然希望能够使用EDMX文件而不必制作我自己的ObjectContext,如果可能的话.
我觉得这很简单,但我真的找不到任何资源!如果有人能指出我正确的方向,那将是非常有帮助的.
c# ×2
amazon-sqs ×1
asp.net ×1
aws-lambda ×1
dry ×1
fractals ×1
landscape ×1
perlin-noise ×1
poco ×1
procedural ×1
terrain ×1