製作像「塗鴉跳躍」這樣的遊戲需要opengl或核心動畫就夠了嗎?這是從哪裏應該考慮使用opengl poit?核心動畫還是opengl?
1
A
回答
1
我已經玩了幾個星期的小型等距3D遊戲。我第一次使用CA,但切換到OpenGL。我的理由是這樣的:
- 切換使得有必要考慮,我做3D
- 我沒有使用可可也沒有任何的OBJ-C構建在我的代碼,它是純C
- 的OpenGL讓我測試我的應用程序在其他平臺上只有一個稍微不同的包裝
對我來說,這使得OpenGL是一個有價值的投資。
因人而異
1
這是我個人的看法, 我覺得做遊戲CA是複雜的。 我推薦OpenGL。
在基於OpenGL的項目中,您應該手動繪製並逐幀移動元素以製作動畫。 它需要比CA更長的代碼,但您可以輕鬆同步屏幕和遊戲狀態。 在使用CA時很難同步圖形和遊戲。
當然,OpenGL的性能比CA好得多。 而且,學習OpenGL並不難!
0
如果您沒有任何opengl和iphone開發經驗,我會建議您先使用石英制作基本遊戲,因爲它會爲您提供最簡單的學習曲線。爲了您的需要,它甚至可以在最後一場比賽中表現出色。
這是一個簡單的自定義視圖,它呈現一個具有30fps動畫循環的單個精靈。
@interface GameView : UIView{
NSTimer* animTimer;
UIImage* sprite;
}
- (void)animate:(NSTimer*)theTimer;
@end
@implementation GameView
- (id)initWithFrame:(CGRect)frame {
if((self=[super initWithFrame:frame])){
sprite=[[UIImage imageNamed:@"sprite.png"] retain];
animTimer=[[NSTimer scheduledTimerWithTimeInterval:1.0/30.0
target:self selector:@selector(animate:)
userInfo:nil repeats:YES] retain];
}
return self;
}
- (void)animate:(NSTimer*)theTimer{
[self setNeedsDisplay];
}
- (void)drawRect:(CGRect)rect {
[sprite drawAtPoint:CGPointMake(0,0)];
}
@end
相關問題
- 1. 嫁核心動畫使用OpenGL ES
- 2. UITableView +核心動畫
- 3. 與核心動畫
- 4. 核心動畫吧
- 5. 核心動畫setFromValue
- 6. 核心動畫...循環動畫?
- 7. 重播核心動畫動畫?
- 8. 跟蹤核心動畫動畫
- 9. 核心動畫 - 修改動畫屬性
- 10. 核心動畫動畫圖像數組
- 11. 核心動畫 - 動畫不起作用
- 12. UIView核心動畫翻轉動畫
- 13. UIkit動畫和核心動畫
- 14. 核心動畫:光柵沒有動畫
- 15. 核心動畫非流暢動畫
- 16. 用核心動畫/ CALayers動畫時鐘
- 17. 核心動畫animationDidStop與鏈接動畫
- 18. 核心動畫'翻轉'動畫
- 19. iPhone:與核心動畫
- 20. iPhone核心圖形動畫
- 21. 核心動畫和NSTimer
- 22. 核心動畫要求
- 23. 爲iPhone核心動畫書
- 24. UIView.frame的核心動畫
- 25. 核心動畫緩存
- 26. webview在覈心動畫層
- 27. 核心動畫:幀率
- 28. 更改CALayer核心動畫
- 29. iOS核心動畫隊列
- 30. 核心動畫回調
好點。仍然,製作像「塗鴉跳躍」這樣的2D遊戲並不一定需要opengl,是嗎?我想製作一款遊戲。我剛開始學習這個,所以我也想知道我應該從哪裏開始? CA或OpenGL – 2010-06-16 07:44:48
這實際上取決於您打算在未來將它放在哪裏。如果這是一個單一的遊戲,並且你對遊戲開發沒有任何興趣,那就去CA吧。如果你最終想開發更復雜的遊戲,學習OpenGL是一個有趣且非常有意義的體驗,將來肯定會對你有所幫助。 – ivans 2010-06-16 07:58:37