首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Iphone游戏开发-需要设计指南

Iphone游戏开发-需要设计指南
EN

Stack Overflow用户
提问于 2010-11-13 15:13:51
回答 2查看 186关注 0票数 2

我已经开始为iphone编写一个游戏,作为所有初学者,我觉得我在黑暗中射击。我只想运行我的设计和我的“图形引擎”的工作方式,看看它是否接近标准设计或良好实践。让我解释一下它是如何工作的:

出于简化的原因,让我们简单地说,我有以下三个类:

LevelView:继承自UIViewController,是一个每个级别都有10个按钮的视图。单击一个按钮将创建一个新的GameViewController对象(使用initWithLevel),并根据玩家选择的级别使用整数( 1-10)实例化它。

GameViewController:继承了UIViewController,并具有initWithLevel( int )方法和一个大型开关语句,该语句根据所传递的int执行级别设置。因此,它实例化两种类型的物体(机器人和行星)在不同的数字,根据每个级别。它创建的每个对象都被插入到属于单个实例的数组中。最后,它将启动gameloop,这是该类中的另一个方法。

GameView:继承自UIView,是绘制所有东西的地方(有一个drawRect方法),以及触点开始、移动和结束方法的位置。每一个gameLoop都会发生什么,这将从全局数组(单例中的数组)中提取所有对象,并根据它是什么对象在正确的位置绘制正确的图像。(机器人和行星的位置作为变量存储在各自的物体中)

在开始的、移动的、结束的方法中,根据用户的操作,从Singleton数组中提取相关对象,并更新它们的位置/能力。因此,下一次循环运行并再次绘制它们时,绘制方法将更新它们的位置或行为。

这听起来就像现在这样吗?我应该实例化一个GameViewController对象来启动这个级别吗?gameLoop是在GameViewController中还是应该在GameView中。我已经将GameView添加到GameViewController in InterfaceBuilder中,它将绘制初始对象,但我不知道如何继续更新它们。如何调用drawRect方法来更新所有内容?

不管怎么说,很抱歉这么长的帖子。我并不是想找一个具体的答案,而只是找一个更有经验的人的评论来告诉我:

1)是的,你的设计方向是正确的

2)不,你需要重新考虑一些事情

谢谢你的帮忙

斯塔夫

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-13 15:33:52

我真的建议使用一个好的游戏框架,如Cocos2d,而不是滚动它所有你自己。

它非常快,很容易与它一起滚动,很多顶级游戏都是用它制作的。

它甚至有“级别”的处理,就像你想要做的那样。

我下载了它,并在24分钟内启动并运行了我的第一个测试应用程序!

请到以下地点查看:

http://www.cocos2d-iphone.org/

票数 1
EN

Stack Overflow用户

发布于 2010-11-13 17:33:06

我同意Cocos2d。另一方面,如果您对图形的工作方式感兴趣,那么就开始学习OpenGL ES,这很难学习,但是一旦您知道了它,您就不会像以前那样通过使用框架来完成所有的工作。

关于你的另一个问题,设计。应用程序建立在MVC模式之上。根据应用程序的规模,您可以将游戏循环(逻辑)放在控制器类中,或者对于更大的项目(以及更好的设计),我认为您应该将两者分开。

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

https://stackoverflow.com/questions/4175229

复制
相关文章
Grammarly For Chrome扩展任意用户劫持漏洞分析
01 — 综述 2018年02月02日,Grammarly官方更新了Grammarly for Chrome 14.826.1446版本,其中修复了一个严重漏洞,在此之前的版本中此扩展能够向所有网站曝
xfkxfk
2018/03/29
1.4K0
Grammarly For Chrome扩展任意用户劫持漏洞分析
salt扩展与python脚本
来源 SALTSTACK技术入门与实战 1.扩展grains 通过Python脚本定义grains http://www.xiaomastack.com/2014/10/31/saltstack-grains/ file_roots:   base:     - /srv/salt/ /srv/salt/_grains/example.py #!/usr/bin/python def grains(): local={} test={'key': 'vaule','key1': 'vaule1','k
py3study
2020/01/09
1.2K0
Chrome扩展开发
注:content_scripts段中的代码会在页面加载对应阶段"document_start", “document_end”, or "document_idle"自动注入 但是脚本运行在与页面独立的上下文中,无法访问到原页面的脚本上下文资源 如需访问原页面脚本上下文,可在content_scripts脚本中将web_accessible_resources段中声明的脚本注入到document中 样例: js/content-script.js
路过君
2020/06/19
9370
chrome扩展推荐-Tampermonkey
  得益于Google的品牌力量和技术实力,chrome浏览器近年来的市场占有率不断上升。reizhi也是chrome的爱好者之一,从最原始的IE,到假死王maxthon,再到轻快的opera,最后让我留恋chrome的理由还是强大的可扩展性。虽然资源占用永远都是抛不开的弱点,但无与伦比的速度和极致的可扩展性是有目共睹的。
reizhi
2022/09/26
9940
chrome扩展推荐-Tampermonkey
认识Chrome扩展插件
1、前言 现如今的时代,绝大多数人都要跟浏览器打交道的,说到浏览器那肯定是Chrome浏览器一家独大,具体数据请看👇 知名流量监测机构 Statcounter 公布了 7 月份全球桌面浏览器市场份额,主要数据如下: 浏览器 市场份额 月涨跌份额 Chrome 66.19% -0.74% Edge 10.84% +0.2% Safari 8.94% +0.01% Firefox 8.08% +0.28% Opera 3.06% +0.08% IE 0.75% 浏览器扩展插件的用途 生产力工具(和浏览器进
甜点cc
2022/09/26
1.2K0
编写Chrome扩展程序
Chrome的扩展程序很多,也很容易入门,可以来简单实现一下 看看 官方文档 或者翻译的文档:百度、360,慢慢就能实现出一个扩展程序来 每个扩展程序应用一般会包含: 一个manifest清单文件 h
书童小二
2018/09/03
9200
编写Chrome扩展程序
能安装Chrome扩展和油猴脚本的手机浏览器
之前分享过很多Chrome扩展的文章,不过都是电脑端的,今天分享几个手机上能安装扩展和油猴脚本的浏览器。
苏生不惑
2021/04/22
7.2K0
能安装Chrome扩展和油猴脚本的手机浏览器
chrome调试JavaScript脚本
随着 JavaScript 应用的复杂性逐渐提高,开发者需要有力的调试工具来帮助他们快速发现问题的原因,并且能高效地修复它。Chrome DevTools 提供了一系列实用的工具使得调试 JavaScript 应用不再是一件痛苦的事。
空空云
2018/09/27
1.9K0
chrome调试JavaScript脚本
Chrome扩展开发入门
近几年,随着 IE 浏览器的落幕,Chrome(包括使用Chrome内核的浏览器)其实质上已经垄断整个浏览器行业了,就连微软的 Edge 都用上了 Chrome 内核。 可以说,Chrome 的标准,事实上就可以看做是行业标准了。可以预见,Chrome 的发展前景将会非常广阔。
epoos
2022/09/19
4.1K0
Chrome扩展开发入门
chrome无法从该网站添加应用、扩展程序和用户脚本_谷歌浏览器该插件不受支持怎么解决
今天将谷歌浏览器升级到了最新的版本,在安装拓展应用的时候,却发现无法添加应用、拓展程序和用户脚本,让我很是郁闷,现整理解决方法如下:
全栈程序员站长
2022/11/08
3.5K0
使用typescript开发chrome扩展
ianzhi
2023/10/19
7620
使用typescript开发chrome扩展
Chrome扩展程序导出备份与本地导入浏览器
现在即使在国内下载个chrome,转个插件也千难万难。现在科学上网也越来越难,由于众所周知的原因,连qiang这个话题都是敏感词。哀默于心死,还是回避这个话题
周陆军博客
2023/04/09
1.8K0
那些实用的 Chrome 扩展神器
之前已经写过不少Chrome扩展那些我常用的 Chrome 扩展,这里继续推荐那些实用Chrome扩展 ,所谓实用就是能解决实际问题。
数据森麟
2019/12/31
1.2K0
那些实用的 Chrome 扩展神器
Chrome扩展开发入门体验
****前言**** Chrome浏览器扩展开发算是相当简单的,基本只要掌握HTML+CSS+Javascript,即可快速开发一个属于你的Chrome插件! ---- ****Chrome扩展基本目录结构**** manifest.json 这是一个配置文件,里面记录了扩展的使用范围、作者、版本、其余需要加载的文件等内容; icon.png 这个一看便知,就是扩展的图标~~~ popup.html 点击扩展图标,弹出的面板页面(如果在manifest.json中配置了default
AlicFeng
2018/06/08
1.1K0
chrome扩展应用开发快速科普
本文通过对chrome插件的各个部分进行快速的介绍,从而让大家了解插件各个部分的关系,并且知道如何将其进行组装成一个完整的chrome插件。
黄Java
2018/09/18
1K0
chrome扩展应用开发快速科普
Chrome迅雷下载支持扩展1.1
喜欢chrome浏览器又经常使用迅雷下载东西的朋友注意了,chrome迅雷下载扩展已经发布了。再也不用复制到IE打开或者使用IE tab了。
reizhi
2022/09/26
9620
Chrome迅雷下载支持扩展1.1
从零实现的Chrome扩展
Chrome扩展是一种可以在Chrome浏览器中添加新功能和修改浏览器行为的软件程序,例如我们常用的TamperMonkey、Proxy SwitchyOmega、AdGuard等等,这些拓展都是可以通过WebExtensions API来修改、增强浏览器的能力,用来提供一些浏览器本体没有的功能,从而实现一些有趣的事情。
WindRunnerMax
2023/07/24
6020
【前端工具】Chrome 扩展程序的开发与发布 -- 手把手教你开发扩展程序
关于 chrome 扩展的文章,很久之前也写过一篇。清除页面广告?身为前端,自己做一款简易的chrome扩展吧。 本篇文章重在分享一些制作扩展的过程中比较重要的知识及难点。 什么是 chrome 扩展
Sb_Coco
2018/05/28
1.5K0
点击加载更多

相似问题

Chrome扩展与GA脚本对话?

10

google chrome扩展用户脚本图标

11

Chrome扩展内容脚本与答案匹配

11

Chrome扩展中的背景脚本与内容脚本

24

Chrome扩展:扩展不起作用-内容脚本与后台脚本通信

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档