2012-07-26 23 views
2

我必须做一个基本的计算机图形学分配,其中我必须在屏幕上显示一个基本模型,并给予用户控件移动模型组件的位置/方向。我有一些与OpenGL背景,但我想在WebGL而不是这个作业。所以我想知道的是在WebGL的功能方面是否有任何限制?我会在Windows上工作,所以我可以选择学习DirectX,但这种方法学习曲线陡峭,受平台限制。另外,在与WebGL合作时,我应该准备哪些可能的问题?假设我有最新的图形卡之一。使用WebGL代替桌面OpenGL

回答

2

基本上,你可以在OpenGL中做的大部分事情,你可以在WebGL中做。还有一些注意事项,但:

  • 的JavaScript的性能是可怕的,即使是最近的发动机,相对于C++/Java的/ .NET
  • 你的代码是公开的,它不是一个二进制
  • 你缺乏许多开发工具:glm等极少数的库;模型进口商; gDebugger;等
  • 你大多只限于3D图形:尝试运行一些演示“物理”的特色,并看到性能。在其他语言中,您拥有所有标准物理引擎(PhysX,Havoc,Bullet等)
  • 您不会获得OpenGL的所有闪亮的新扩展。事实上,你甚至都没有得到OpenGL 3.

在光明的一面,它比其他所有的方式更容易设置:只需剪切粘贴教程的html代码,然后就可以开始。没有包含路径,没有依赖关系等等。如果你的任务真的只是绘制一个简单的模型并用鼠标旋转它,那么WelGL可能就是要走的路。

+0

JavaScript性能不可怕 - 其C的速度的数量级内/ C++ – 2014-03-14 15:47:10

+0

@ScottStensland这就是我所说的可怕。 Google地图在我的智能手机上比在我的四核上速度更快。 – Calvin1602 2014-03-15 12:28:07

2

存在着巨大的优势,在WebGL的做IMO

  • 你把所有HTML5的帮助你。
    • 你得到免费的图像加载
    • 免费鼠标输入
    • 免费键盘输入
    • 免费跨平台音频
    • 免费跨平台的字体和文本
    • 免费2D库生成纹理或操纵图像
  • 您是开箱即用的跨平台
    • 一个朋友有一个Mac,另一个Linux,它只是工作
    • 你可以从几乎任何地方访问它。
    • 把你的代码放在github上,发布它,你可以在任何地方运行和编辑。忘记你的机器?只需使用许多直接github编辑器之一(或使用dropbox)在线编辑
    • 需要帮助?向某人发送链接。即使他们有不同的机器,他们也可以运行,检查和帮助您。不需要兼容的C++编译器或gazillion库。今天