小编Jer*_*rry的帖子

调用Lua函数

我想在Lua和C中处理以下代码:

假设我有一个命名为C函数的FooLu 函数.我称之为Lua脚本中的跟随:

Foo(15, "bar", function(z) return 2 * z + 1 end)
Run Code Online (Sandbox Code Playgroud)

在C方面,我检索参数,我可以在我的结构中存储数字和字符串.但是我需要哪种数据类型来存储匿名函数?我怎么以后再打电话呢?

c api lua

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

日语的Unicode字体

我在创造一个游戏.我有一些带文字的UI.最近我们想添加日语版本但我有字体问题.我使用stb_freetype来光栅化字体,我支持Unicode,所以它应该不是问题.但是大多数字体似乎都不包含Janapese字符,在Windows上我发现Arial Unicode的确如此.但它的大小是26 MB,这远远超过我们的完整游戏!

我见过Unicode和字体,但它并没有完全覆盖我的问题.

所以基本上我要问两件事:

  1. Janapese字体有不同的字体吗?我的意思是,西方字体有serif,sans-serif或更具异国情调的版本.这是否也适用于亚洲字体?

  2. 我可能会使用系统字体而不是自己提供这么大的文件.我知道如何在Windows上找到Arial Unicode,但我们的游戏还有适用于Mac OSX,Linux和iOS的版本.我在哪里可以找到这些平台上的Unicode字体(以及我应该使用哪些字体)?特别是我对Linux很感兴趣,因为这对我们来说是最不熟悉的平台.

unicode fonts truetype

5
推荐指数
1
解决办法
4798
查看次数

有损转换矩阵 - >四元数 - >矩阵

我有一个由8分定义的方框.从这些点开始,我计算轴并创建旋转矩阵,如下所示:

axis[0], axis[1], axis[2]
mat = 
{
  axis[0].x axis[1].x axis[2].x 0
  axis[0].y axis[1].y axis[2].y 0
  axis[0].z axis[1].z axis[2].z 0
  0         0         0         1
}
Run Code Online (Sandbox Code Playgroud)

我有特定的旋转矩阵:

{
  -1  0  0  0
   0  0  1  0 
   0 -1  0  0
   0  0  0  1
}
Run Code Online (Sandbox Code Playgroud)

据我所知,这是一个有效的旋转矩阵.它的反演等于它的转置.

现在我想将此矩阵存储为四元数.但是后来,我需要从这个四元数中重新创建旋转矩阵.我相信从矩阵到四元数并返回到矩阵的转换应该是一个恒等变换,我应该得到我在开始时所拥有的相同矩阵(可能具有非常小的数值误差).

但事实似乎并非如此.SlimDX(C#)和我的属性数学库(C++)都返回无效矩阵.

首先,我收到的四元数:

C#:  0, 0, 0.70710676908493, 0
C++: 0, -0.707107, 0, 0
Run Code Online (Sandbox Code Playgroud)

从这个四元数创建的矩阵:

C#:

0 0 0 0
0 0 0 0
0 0 1 0
0 0 0 1
Run Code Online (Sandbox Code Playgroud)

C++:

0 0 0 0 …
Run Code Online (Sandbox Code Playgroud)

math 3d geometry

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

标签 统计

3d ×1

api ×1

c ×1

fonts ×1

geometry ×1

lua ×1

math ×1

truetype ×1

unicode ×1