首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用OpenGL创建MVC范例的最佳方式是什么?

使用OpenGL创建MVC范例的最佳方式是什么?
EN

Stack Overflow用户
提问于 2011-02-19 04:19:39
回答 1查看 875关注 0票数 1

我开始了解OpenGL开发,特别是使用Mac和Cocoa和/或CGL,所以我将使用这些类作为示例,但我的问题更多的是关于设计,而不是特定的实现。情况是这样的:

我有一个“scene”对象,它可以包含或引用数据来渲染它自己,并响应一个“render”消息来绘制它自己,而不需要任何转换。

我有一个NSViewNSOpenGLView对象,它创建openGLContext和pixelFormats,调整视图大小,并根据传递给它的任何转换更新ModelView和投影。视图对象还包含一个摄影机struct,它是openGL变换的基础。

我有一个控制器对象,它是一个NSResponder对象,它响应用户输入。

我不知道这是否是最好的安排;在这种情况下,“模型”应该是场景,我认为经典的控制器应该协调模型和视图之间的操作,但是视图每次想要绘制视图时都发送[[controller scene] render]似乎很奇怪。

我不确定放置“相机”的最佳位置是否在视图中。我是否应该让scene对象也包括看着它的摄影机,并让它响应来自控制器的UI输入,该输入当前传递给视图?

或者这是完全错误的方法?我试图将一些不适合MVC的东西硬塞进MVC。我很好奇人们在OpenGL中使用什么样的设计模式。

EN

回答 1

Stack Overflow用户

发布于 2011-02-19 06:11:27

我像你所描述的那样看待它。视图旨在控制视点和投影,因此在其中保留相机参考是合乎逻辑的。另一方面,Scene对我来说是一个纯数据容器,与你的模型相反,不涉及渲染方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5046127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档