这对我来说听起来很像一个视频游戏的要求 - 看看这些引擎:
Photon Engine(商业):https://www.exitgames.com/
Cloudmach(商业):http://cloudmach.com/
Quake 2 移植到 GWT:http://code.google.com/p/quake2-gwt-port/
Steppe(目前为2.5D,但服务器端渲染):http://steppe.fleetingfantasy.com/
... 这里还有另一篇关于这个确切主题的 SO 文章:服务器端 3D 渲染
如果您不介意使用Flash客户端,那么这应该很简单。
从问题的措辞中,我假设您已经计划好内容将如何呈现,或者至少这是与您在此处提出的问题无关的问题。
考虑到这一点,您的要求实际上减少到了实时屏幕广播。
我知道的最简单的选择是Flash Media Live Encoder用于向RTMP客户端提供流,或者Red5或类似解决方案。
我不确定这些解决方案可能存在哪些许可问题,但希望这至少能为您提供其他选项的想法...
P.S. 我刚注意到您在问题末尾提到了Flash作为一个选项,因此您可能已经知道这些选项,并主要寻找非Flash替代品?如果是这种情况,那么我不确定实际上有哪些解决方案可用,但Adobe 已经发布了RTMP规范供公众使用,我相当确定非flash客户端确实存在。我也很确定不存在非Flash服务器。
无论如何,我仍然认为这是一个很好的选择,说实话...
"Sort of like VNC through Javascript/HTML5 I suppose"
RealVNC Java Viewer实际上可以通过Java实现这一点。只有在尝试流式传输由GPU(即硬件渲染)生成的输出时,它才会失败。我相信VNC可以通过更改它用于抓取帧缓冲区的方法来处理这种情况。
根据此页面的说法,“对于无法远程控制的3D应用程序/视频,恢复到VNC Hooks可能会提供更新,但性能会降低。”