小编Vai*_*urt的帖子

使用CMake自动将文件夹中的所有文件添加到目标?

我正在考虑将跨平台项目从Visual C++,XCode和makefile中的单独构建管理系统切换到CMake.

我需要的一个基本功能是自动将目录中的所有文件添加到目标.虽然这很容易用make做,但使用Visual C++和XCode并不容易做到(如果我错了,请纠正我).是否可以直接在CMake中进行?怎么样?

在学习CMake之前,请随意添加我应该注意的任何其他事情,考虑到目前该项目是中等规模的(8个库,2个可执行文件,8个测试项目,它取决于大约8个外部库).

c++ cross-platform cmake

150
推荐指数
3
解决办法
13万
查看次数

Visual Studio 2013/2015空闲CPU使用率

我目前正在评估Visual Studio 2015 RC.我注意到在运行IDE时,Visual Studio 2015进程的CPU使用率一直在25%左右.即使没有加载项目且没有欢迎页面,它也会以恒定速率吞噬25%的CPU使用率.没有其他应用程序运行除后台服务.所有其他正在运行的进程总共使用2到4%的CPU.

在Visual Studio 2013中也注意到了此行为.

是否有其他人看到这种行为?这是正常的吗?有什么建议?

visual-studio-2013 visual-studio-2015

73
推荐指数
2
解决办法
2万
查看次数

单身人士:好的设计还是拐杖?

单身人士是一个备受争议的设计模式,所以我对Stack Overflow社区对它们的看法感兴趣.

请提供您的意见的原因,而不仅仅是"单身人士是懒惰的程序员!"

这是一篇关于这个问题的相当不错的文章,虽然它反对使用Singletons: scientificninja.com:performant-singletons.

有没有人对他们有任何其他好文章?也许是为了支持单身人士?

language-agnostic singleton design-patterns

67
推荐指数
11
解决办法
2万
查看次数

游戏网络物理碰撞

如何在网络游戏的典型客户端/服务器设置中模拟两个客户端控制的车辆(明智地)发生冲突?我确实读过这篇关于如何进行分布式网络物理的博客文章(没有传统的客户端预测),但这个问题具体是关于如何处理自有对象的冲突.

假设客户端A比服务器提前20毫秒,客户端B提前300毫秒服务器(计算延迟和最大抖动).这意味着当两辆车相撞时,两个客户都会看到另一辆车落后320毫秒 - 与另一辆车的速度方向相反.在瑞典高速公路上的对决意味着相差16米/17.5码!

什么不试试

实际上不可能推断出位置,因为我也有非常复杂的车辆,车身上有关节和车身,而车身又有线性和角度位置,速度和加速度,更不用说用户输入的状态了.

network-programming physics

50
推荐指数
3
解决办法
5716
查看次数

如何在特定关键帧处使对象不可见而不在Blender(2.59)中移动它?

我对搅拌机很新,我正在做一些实验.

我一直在寻找一种方法,使一个物体在特定的关键帧处从视线中消失,而不会将其移出相机视图.例如,在第1帧,立方体在那里,在(0,0,0)和第2帧,它不再可见,但仍然在位置(0,0,0),在第3帧它再次可见.

搜索网页后,我发现这个页面建议将对象移动到另一层,但由于它适用于blender 2.49,从那时起软件似乎发生了变化:插入时我无法找到"图层"选项一个关键帧.

我发现了其他一些网站,但他们建议使用类似于上面链接的技术,或者他们建议改变纹理的alpha,我对此不感兴趣.

那么,在搅拌机2.59中使对象不可见的首选方法是什么?

其他信息(与我期待的答案无关,IMO):

  • 我正在使用搅拌机为Unity制作模型.
  • 我正在使用2.59,因为那是与我拥有的统一版本一起工作的那个.

blender

12
推荐指数
4
解决办法
4万
查看次数

GLSL编辑程序

我正在寻找一个GLSL编辑器程序.我确实通过谷歌搜索找到了一些,但我想知道是否有任何基于用户体验的首选.

可能的功能:

  • 语法突出显示
  • 智能感知
  • 自动编译和链接

PS
我甚至不确定GLSL是否有意义/可能自动编译(任何评论?).

编辑:
这是我发现的:

opengl editor glsl

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

如何在cppcheck中使用Visual Studio解决方案排除或指定构建配置?

我有一个半大的Visual Studio解决方案,具有一系列不同的构建配置和各种平台.我真的只想在一个平台上检查一个或两个配置.但是,当您使用--project标志时,我在CppCheck手册中没有看到选择构建配置的方法.我试过用--platform; 然而,这甚至不只是为该平台选择配置(win64仍然检查win32配置).

有没有办法让CppCheck在解决方案中选择单一的构建配置,或者甚至可能排除某些配置?

visual-studio cppcheck

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

Android - 如何使用Android创建圆形视图?

我在这里创建一个如下设计的视图(如苹果音乐).

图1:

图2:

粉红色的圆圈与物理互动和飞行.你能建议如何制作它们吗?

geometry android view

8
推荐指数
1
解决办法
8272
查看次数

有没有办法从python类生成一个c ++类并将其绑定到编译时?

有没有办法从python类生成一个相对干净的c ++类并在编译时绑定它?

例如,如果我有这个python类:

class CarDef:
    acceleration = 1000.0
    brake = 1500.0
    inertia = acceleration * 0.1 * brake

    def __init__(self):
        pass
Run Code Online (Sandbox Code Playgroud)

我想要相应的c ++类:

class CarDef
{
public:
  double acceleration;
  double brake;
  double inertia;
  CarDef() 
  : acceleration( 1000.0 )
  , brake( 1500.0 )
  , inertia ( 150000.0 )
  {};
};
Run Code Online (Sandbox Code Playgroud)

生成的c ++类可能与原始的python类不同:我可以使用"getter方法"范例而不是类属性.

我想要实现的是在python中创建我能够在我的c ++应用程序中使用的资源文件.目标是尽可能减少最终用户为添加和使用参数而必须编写的代码量; 并且它必须避免在"运行阶段"期间进行字符串比较(在"初始化阶段"期间允许).

我希望用户只需输入两次资源名称:一次在python类中,一次在资源将在c ++中使用的地方,假设"魔法"将绑定两个项目(在运行时(我怀疑可以在没有字符串比较的情况下完成)或在编译时(中间步骤在编译项目之前生成c ++类)).这就是我从python到c ++的原因; 我相信从c ++到python需要至少2个python文件:一个生成,一个从后者继承(以避免覆盖已经指定的资源).

最终用户使用如下所示:

// A singleton definition manager
class DefManager
{
  CarDef mCarDef;
public:
  static DefManager& GetReference() 
  {
    static DefManager instance;
    return …
Run Code Online (Sandbox Code Playgroud)

c++ python

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

是否有更简洁的方法来处理编译器错误C1076和C3859?

今天我一直在为我们的precomp.h文件添加一些库头文件.然后我尝试在调试中重新编译并得到这两个错误(从boost包括产生):

错误C3859:超出PCH的虚拟内存范围; 请使用'-Zm310'或更高版本的命令行选项重新编译

致命错误C1076:编译器限制:达到内部堆限制; 使用/ Zm指定更高的限制

所以我通过增加内存堆大小来修复它们.没问题.

我的问题更多的是关于这个问题是否会隐藏另一个问题?如果我继续向库中添加库标题,我最终还是要给它更多的内存precomp.h吗?这是程序员处理它的方式,还是会有一种"更清洁"的方式呢?

更多信息:

  • Visual Studio 2013
  • C++

c++ precompiled-headers

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

在Visual Studio 2010上将静态库链接到我的项目

我想使用oscpack(http://code.google.com/p/oscpack/)作为我项目的静态库,但是当我尝试将其添加到示例中时,我会收到链接错误,例如:

1> oscpackd.lib(UdpSocket.obj):错误LNK2019:未解析的外部符号__imp__socket @ 12在函数"public:__thiscall UdpSocket :: Implementation :: Implementation(void)"中引用(?? 0Implementation @ UdpSocket @@ QAE @XZ)

1> oscpackd.lib(UdpSocket.obj):错误LNK2019:未解析的外部符号__imp__closesocket @ 4在函数"public:__thiscall UdpSocket :: Implementation :: ~Installation(void)"中引用(?? 1Implementation @ UdpSocket @@ QAE @ XZ )

...

基本上,我创建了一个用于构建oscpack.lib的解决方案,在项目中我添加了相应的.h和.cpp文件.

然后在示例解决方案中,我添加了我的main.cpp然后我包含了(属性> C/C++>其他包含目录)oscpack库的文件夹,然后在链接器选项卡上我添加了libs的文件夹位置和名称的库.

c++ visual-studio-2010

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

为什么uint8_t + uint8_t导致int?

我注意到,对于8位变量的简单操作,变量int在操作完成之前转换为32位s,然后转换回8位变量.

举个例子,这个c ++程序:

#include <iostream>
#include <cstdint>

int main( void )
{
  uint8_t a = 1;
  uint8_t b = 2;

  std::cout << "sizeof(a)   = " << sizeof( a ) << std::endl;
  std::cout << "sizeof(b)   = " << sizeof( b ) << std::endl;
  std::cout << "sizeof(a+b) = " << sizeof( a+b ) << std::endl;

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

产生以下输出:

sizeof(a)   = 1
sizeof(b)   = 1
sizeof(a+b) = 4
Run Code Online (Sandbox Code Playgroud)

所以我们可以理解发生的事情是:

uint8_t c = (uint8_t)((int)(a) + (int)(b));
Run Code Online (Sandbox Code Playgroud)

显然,它似乎在论坛中所说的C的规范中.

另外,在Visual Studio …

c++ types

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

是否可以在运行时将航点分配给玩家或游戏对象?

是否可以在运行时将方式点分配给Unity中的player或gameObject?

我将在运行时创建一个随机数量的玩家,并创建两倍于玩家或游戏对象的游戏对象或转换...

可以根据玩家的性质或数量在运行时设置路标吗?

欢迎提出任何建议或解决方案.

unity5

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