小编Fat*_*tie的帖子

如何在统一中添加文本大纲

如何在文本UI对象上统一添加文本大纲?

我想在设计器/编辑器视图中执行此操作.我无法找到任何有用的主题,我也无法看到如何从设计师的视图中添加它.

在此输入图像描述

我的项目是2d,我使用的是最新的统一版本5.3.我想达到类似的效果.

unity-game-engine unity3d-ui

4
推荐指数
2
解决办法
6338
查看次数

在 Unity3D 中,从数字中删除除一定数量的小数以外的所有小数

用于 Unity3D 中的文本显示。如果我想从浮点数中删除除 2 位小数以外的所有内容,我该怎么办?为了澄清我想做什么,请看下面的例子:

说我有花车:

1.25013

1.9012

1.029

现在,在 Unity 中,如果我想缩短它们以便只保留两位小数,我应该怎么做,即在显示字符串之前返回 1.25、1.90 和 1.02,例如在 a 上UI.Text

我已经研究过字符串格式和类似的东西,Math.Floor但没有成功。

c# unity-game-engine

4
推荐指数
1
解决办法
5419
查看次数

在新的Unity网络中进行"直接"RPC样式调用?

说你有

在此输入图像描述

使用"新的"统一网络,你必须有(据我所知)一个NetworkManager地方.它会产生荒谬的"玩家"对象.

荒谬的"玩家"对象必须有一个继承自的类NetworkBehaviour.

大多数团队称该类为"Comms"或"AbstractPlayer"或"Junction".

public class Comms : NetworkBehaviour { }
Run Code Online (Sandbox Code Playgroud)

因此,每个命令(如"跳转")都必须由"Comms"类调解.

对于每个命令(如"Jump"),您需要 Comms类中的一对函数:

public class Comms : NetworkBehaviour {

    // for every command (say, "Jump") you need THIS PAIR of functions:

    public void CommandJump() {
        Debug.Log("this is comms - client, do a Jump");
        CmdJump();
    }

    [Command]
    void CmdJump() {
        Debug.Log("this is comms - server. a Jump arrived");
        // simply pass on that command to the correct script on a server... …
Run Code Online (Sandbox Code Playgroud)

networking unity-game-engine

4
推荐指数
1
解决办法
515
查看次数

Subversion,但不是Git,允许空文件夹是否正确?

令人惊讶的是,大量的谷歌搜索没有找到明确的参考,说明Subversion确实"允许空文件夹".

广泛的测试似乎表明了Git并没有让空文件夹,而,颠覆允许空文件夹.

任何人都可以提供明确的答案或参考:如果确实git不允许空文件夹.

任何人都可以提供明确的答案或参考:如果Subversion 确实允许空文件夹.(例如,Subversion书籍,就空文件夹的主题实际上什么也没说,尽管它似乎是一个主要问题!)

svn git version-control

3
推荐指数
1
解决办法
260
查看次数

将CGImageRef(不是UIImage)绘制到图像上下文中

以下是如何在上下文中绘制UIImage:

UIGraphicsBeginImageContextWithOptions(size, NO, 0.0f);
[someUIImage drawInRect:CGRectMake(...)];
[someOtherUIImage drawInRect:CGRectMake(...)];
[someOtherUIImage drawInRect:CGRectMake(...)];
UIImage *yourResult = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)

没问题.但是,假设我有一个以某种方式构建的CGImageRef.

CGImageRef happyImageRef = CGImageCreateWithImageInRect(blah blah);
Run Code Online (Sandbox Code Playgroud)

我想把它绘制到上下文中.

UIGraphicsBeginImageContextWithOptions(size, NO, 0.0f);
[ happyImageRef .. somehowDrawInRect:CGRectMake(...)];
UIImage *yourResult = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)

你是怎样做的?

要清楚,显然你可以将它转换为UIImage

UIImage *wasteful = [UIImage imageWithCGImage:happyImageRef];
Run Code Online (Sandbox Code Playgroud)

但这看起来非常低效.怎么做?

我确定我很困惑或遗漏了一些简单的东西,谢谢.

cgimageref uigraphicscontext drawinrect

3
推荐指数
1
解决办法
2186
查看次数

将圆柱体变成球体而不会在杆上捏住

我正在研究用六边形网格制作的行星.不需要杆 - 使这更容易一些.有没有更好的方法将圆柱体变成具有均匀六边形/三角形的球体?

这是所需的步骤:

  1. 生成二维六边形平面(ok)
  2. 将飞机变成一个气缸(好)
  3. 将气缸变成球体/地圈(有点作品)

对于第2步,我只是使用Sin和Cos将顶点移动到圆形.对于第3步,现在我只是使用:vertices[i] = vertices[i].normalized * radius;

图像可视化当前的问题.

请注意,电极是故意切断的.红色部分显示六边形网格的样子.我必须保持它们的大小和方向大致相同,因为它们用于游戏和视觉元素.每个十六进制都有一个邻居列表,基本上就像一个图形.

math 3d geometry

3
推荐指数
1
解决办法
2088
查看次数

Swift3中的UUID,但使用“版本1”样式的UUID

这个问题是关于Swift的

这很容易产生在RFC UUID 斯威夫特得到一个斯威夫特String因为在这个阶段,苹果已经取得了斯威夫特方法,它...

func sfUUID()->String
    {
    return UUID().uuidString.lowercased()
    }
Run Code Online (Sandbox Code Playgroud)

使用Swift时,我需要一个老式的“版本1” UUID

(例如:https : //en.wikipedia.org/wiki/Universally_unique_identifier#Version_1_.28date-time_and_MAC_address.29

Swift3中有没有办法做到这一点?(仅> 9)

Swift中,如何获取版本1 UUID。因此,可能有一些我不知道的选择UUID(),或者存在调用C调用并将结果安全地作为的困难String

uuid ios swift

3
推荐指数
1
解决办法
1252
查看次数

使用Docker + Kitura,但不适用于Mac

我在Mac上有一个完美的Swift-Docker-Kitura项目...

在此处输入图片说明

您可以使用Xcode处理代码,然后在终端中处理代码docker build。它建立。您docker run甚至可以在本地主机上查看该网页。然后docker push,您可以将其转到主要的AWS云并进行托管。

太好了

但是,如果我想“不在Mac上”使用Swift-Docker-Kitura怎么办?

您可以在AWS(或类似服务)上的某种外壳上“构建”并“推送”这样一个快速的项目吗?

docker kitura

3
推荐指数
1
解决办法
306
查看次数

Unity,编辑器时脚本,在游戏对象上添加到场景事件

假设您有一个简单的预制件“盒子”,我们会说它只不过是一个标准的米立方体。

  • 1 - 预制框在您的项目面板中

  • 2 - 将其拖到场景中

  • 3 - 显然它现在也出现在 Hierarchy 面板中,并且可能被选中并显示在 Inspector 中

需要明确的是,当您执行此操作时,游戏不是 Play,您只是处于普通编辑器模式。

是否可以制作脚本(“编辑器脚本”?),以便,

  • 当你做上面的“1”和“2”时,(再次这是在编辑器模式下,而不是在游戏中)

  • 当 3 发生时,我们可以影响场景中的新 Box 项目

  • 所以,简单的例子:我们将始终将 Z 位置设置为“2”,无论您将它放在哪里。

简而言之:编辑器代码,以便每次将预制件 P 拖到场景中时,它将位置 z 设置为 2.0。

这在 Unity 中可能吗?我对“编辑器脚本”一无所知。

很明显,这应该是可能的。

c# unity-game-engine unity3d-editor

3
推荐指数
1
解决办法
3060
查看次数

在 aws 代理集成 js lambda 中,是否有正确或标准的方法从 event.body 获取 html 表单值,而不仅仅是使用查询字符串?

有一个简单的 aws lambda(.mjs 文件)。有一个简单的 API 网关,使用代理集成。有一个简单的网络表单,

<form method="post" action="...">
<input type="text" name="team">
<input type="text" name="score">
<input type="submit" value="send">
Run Code Online (Sandbox Code Playgroud)

在您的 lambda 中,“事件”捕获从网关发送的整个信息块

export const handler = async (event, context) => {
   ...
Run Code Online (Sandbox Code Playgroud)

例如,您将在这里找到 queryStringParameters,

查询字符串参数:{示例:'值'},

标题在这里

headers: {
 accept: '*/*',
 ...
Run Code Online (Sandbox Code Playgroud)

等等。问题的实质内容被标记为“正文”

body: 'team=sec+west&score=42',
Run Code Online (Sandbox Code Playgroud)

实际例子!

在此输入图像描述

据我所知(似乎完全没有记录)html 表单参数作为 url 查询字符串样式的字符串传递。

因此,我总是这样简单地解析它们......

import querystring from 'querystring'
...
  if (event.body) {
    console.log('here is the "body" ...')
    console.log(event.body)
    let parsed = querystring.decode(event.body)
    team = parsed.team
Run Code Online (Sandbox Code Playgroud)

请注意,这个问题严格来说仅与使用代理集成网关有关。(当然,您不能使用代理集成,而是以您想要的任何方式映射它。)

另请注意,这是关于使用 …

amazon-web-services node.js aws-lambda aws-api-gateway

3
推荐指数
1
解决办法
52
查看次数