我一直在为我的笔记本电脑调整我的游戏渲染器,它有一台Radeon HD 3850.这款芯片具有相当大的处理能力,但内存带宽有限,所以我一直试图将更多着色器工作转移到更少的传递.
以前,我使用的是简单的多通道模型:
为了提高这种方法的性能,我编写了一个新的渲染路径,它计算了动态构建自定义GLSL着色器的灯光数量和类型.这些着色器接受所有光参数作为制服,并在一次通过中完成所有照明.我期待遇到某种限制,所以我先用一盏灯测试它.然后三个.然后二十一,没有错误或文物,并有很好的表现.这引出了我的实际问题:
是否可以检索最大制服数量?
这种方法在较旧的硬件上是否可行,或者制服是否更加有限?
如果我把它推得太远,我会在什么时候出错?着色器编译?程序链接?使用该程序?
我正在寻找一个3D引擎(用于游戏).我更喜欢使用.net或Mono的C#,但如果我没有为C#找到任何东西,C++也会这样做.我想为Windows和Linux编写程序.iPhone/Android对其他项目也很有意思.
到目前为止,我发现了这些引擎(C#):
我可以在C#中使用其他一些引擎吗?
Axiom似乎是我需要的.有人有Axiom的经验吗?你会选哪一个?
谢谢!
编辑:如果使用引擎/框架构建的程序不需要安装任何运行时程序(除了.net或单声道),这将是很酷的据我所知,你需要安装XNA来运行XNA应用程序.:(
我正在尝试使用Dart语言和HTML5 Canvas元素,但我遇到了一个问题.我不知道如何在Dart中加载图像.我可以得到CanvasRenderingContext2D,并且我可以调用fillText()和fillRect(),一切正常,但我想弄清楚如何加载图像并使用drawImage进行绘制.
首先,我回顾了这个问题,但我想我需要更多的信息,因为我之前从未参与过开源项目.
我正在启动一个开源项目,目前托管在Google代码上.它是在ActionScript3(面向程序员)中创建Flash游戏的框架.到目前为止,这么好,但我想开始围绕它建立一个社区.该项目的第一次正式稳定发布完成了60%(我使用Scrum来指导开发过程,目前我们在开发团队中有3人).顺便说一下,该项目拥有MIT许可证.
您对如何指导开发有任何建议,我应该看看哪些工具?
Assembla vs Google代码vs Trac vs Pivotal跟踪器?
你对此有什么经历?
我正在开发一款Windows游戏,我有这个:
bool game_cont;
LRESULT WINAPI WinProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch(msg)
{
case WM_QUIT: case WM_CLOSE: case WM_DESTROY: game_cont = false; break;
}
return DefWindowProc(hWnd, msg, wParam, lParam);
}
int WINAPI WinMain(/*lots of parameters*/)
{
//tedious initialization
//game loop
while(game_cont)
{
//give message to WinProc
if(!GameRun()) game_cont = false;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我想知道是否有更好的方法来做到这一点(暂时忽略计时器和c)而不是game_cont全球化.总之,我需要能够退出,而在WinMain从WinProc,所以如果用户按下关闭出局的方式等,该游戏在游戏菜单,程序不会保留在内存中运行.(正如我在没有game_cont..声明的情况下测试时所做的那样)WinProc.
哦,并且在旁注中,GameRun基本上是一个bool,在游戏结束时返回false,否则为true.
我正在使用visual studio 2010 express,我正在尝试编写一个简单的程序,该程序将重复波形文件5次(我正在运行windows xp sp3)。
这是我得到的:
#include "stdafx.h"
#include <windows.h>
#include <iostream>
using namespace std;
int main ()
{
int a = 5;
while(a >= 1){
cout << "It's a wav file";
PlaySound(L"SomeAudioFile-01.wav", NULL, SND_FILENAME);
--a;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
问题是我在构建它时不断收到此错误消息:
1>------ Build开始:项目:这是一个F**king国家,配置:发布Win32 - ---- 1> mycode.cpp 1>..\..\..\..\..\Shaul's documents\Visual Studio 2010\Projects\MyProject\Release\SomeAudioFile-01.wav:致命错误 LNK1136:文件无效或损坏 ========== 构建:0 成功,1 失败,0 最新,0 跳过 ==========
该文件非常好,在visual studio之外播放没有任何问题。
帮助将不胜感激。