用目标C绘制形状

时间:2012-02-17 20:04:37

标签: objective-c cocoa-touch opengl-es xcode4.2

我必须开发一个应用程序,必须以“模拟人生”的方式呈现六边形的“底板”,类似this,但更简单。

我对CoreGraphics知之甚少,对OpenGL一无所知,你会用哪种方式以“简单”和“快速”的方式完成工作?

3 个答案:

答案 0 :(得分:1)

你应该看看Cocos2D。它使编程游戏变得更加容易。它还支持tile maps,您可以使用它来创建发言权。

答案 1 :(得分:1)

尝试使用CATransform3D将透视应用于2D视图。相关问题:How do I apply perspective?

答案 2 :(得分:1)

有很多方法可以实现这一目标。当我读到它时,你正在寻找一个2D视角,幸运的是,对于没有3D渲染经验的人来说,它更容易被访问。您可以像sch建议的那样探索第三方库的使用。

如果你想要一个“原生”解决方案,你的选择将是基于CG或基于图像/ UIKit的东西。两者都相对容易接近。

使用Quartz / CG,基本上你将绘制一系列线条和弧线来组成你想要的形状。我通常在纸上创建草图,然后在代码中绘制出我需要的粗略段和组件;使用CG命令绘制路径真的不是很难。您可以非常轻松地构建一个形状工厂类,然后您可以在需要将形状放入视图时询问给定大小的给定形状。

如果您不愿意在代码中绘制路径,则最后一个选项是使用UIKit。使用这种方法,您可以在photoshop中创建形状,将它们切片成图像,然后将它们放入图像视图中并放入应用程序中。然后,您可以使用CALayer变换在2.5d空间中操作这些图像。如果你的需求是适度的,这是一个相对简单和简单的方法,并使它看起来不错。不幸的是,这种方法不是高度动态的,不能很好地扩展,并且可能根本不符合您在屏幕上寻找的性能阈值。