我正在实现一个使用CGI用C ++编写的Web应用程序 是否可以使用也具有动画的3D绘制GUI? 我应该只包含某种生成GIF动画并使用image map的机制吗? 还有另一种更优雅的方法吗?
编辑:
所以它总结为Java或Silverlight或Flash 10
Flash 10已经普及吗?
如果不是,Java是更好的选择,因为它的传播范围更广?
答案 0 :(得分:4)
我建议您查看Canvas HTML标记以及Chrome Experiments。这些需要一个非常现代的浏览器和一个非常有趣的JavaScript实现,但有些相当令人印象深刻。
其他选项包括Adobe Flash和Microsoft的Silverlight。
答案 1 :(得分:3)
我认为你错过了一些关键的想法。
如果你想拥有一个3D网络应用程序,我认为你不会在后端做得很成功。你将使用大量的CPU和带宽渲染并发送帧,这将是缓慢和滞后的(尽管一些视频游戏初创公司仍然无名可能你会想到)。
而你想要的是一些客户端技术,比如Flash 10或Silverlight,它使用客户端CPU和GPU在客户端上进行硬件加速渲染。
答案 2 :(得分:2)
首先:从您的一些评论中,您似乎并不打算在浏览器中实际使用您的Web应用程序。如果我错了,请看下面。如果我是对的,那么你可以使用你想要的任何技术编写你想要的任何UI,并通过该UI程序连接到你的web应用程序。您需要处理的问题是:什么平台,什么技术等等。但是使用这样的UI连接到Web应用程序没有问题;只需遵循套接字编程中的HTTP协议,或使用为您执行此操作的框架。
也就是说,如果您打算在浏览器中进行3D操作,则应该查看Google O3D API。它是一个浏览器插件,但它应该为您提供使用GPU进行3D浏览器所需的一切,而不是像Flash和Silverlight那样的软件渲染。
如果您不愿意使用浏览器插件并且您不想尝试自己的UI程序,那么您唯一的另一个选择是使用Canvas和Chrome实验,就像@Kitsune所建议的那样。
答案 3 :(得分:1)
我遇到了同样的问题:我需要在网络前端(CGI)中显示3D模型。
目前,Flash似乎是最好的解决方案 - 几乎所有浏览器都支持闪存(包括许多移动设备),并且Flash有各种各样的工具和功能 - 请参阅: http://osflash.org/projects
所以我会尝试开发一个CGI应用程序,它会生成一个flash动画并通过http发送它。
如果您找到了实现它的解决方案/方法,那将会很有趣 - 目前我没有时间:(
侨, 克里斯
PS:Adobe将Flex-3 SDK作为OpenSource - 可用于商业应用。