游戏

贪吃蛇系列之二——游戏窗口的建立

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-27 19:27:57
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 下面,我们废话不多说,就开始我们的贪吃蛇小项目。首先,我们打开我们的Eclipse,孤狼用的呢是比较新的版本,Eclipse 4.2.0的,没有Eclipse工具的朋友呢,可以到Eclipse的官方网站 http://www.eclipse.org/platform 进行下载。在接下来的博文中,孤狼将分多个版本来逐步的完善我们的贪吃蛇游戏。 我们建立一个新的Java项目,Snake01,在这个版本中,我们将先将游戏的窗口创建出来,那么下面,我们就开始Coding吧。最为一名好的程序员,我们最好再一开始就养成比较好的编程习惯,学会建包就是一个好的开始。首先,我们创建游戏的主窗口类GameView类,并将这个类放在com.gulang.snake.view下面,如下图: 接下来,我们开始对GameView进行编码,大家直接看代码,我会在后面进行解释: package com.gulang.snake.view; import java.awt.Color; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JFrame; public class GameView extends

把别人的Tcl/Tk代码加入到Go语言里8 游戏1 trains火车【这货很长很长】

江枫思渺然 提交于 2019-12-21 23:50:40
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> a 首先打开网页 http://wiki.tcl.tk/1359 【 trains3.tcl Updated 2012-12-09 19:44:49 by pooryorick 】 b 把网页里提到的tcl/tk代码复制到如下go源代码的init_script字符串常量里 package main import "github.com/nsf/gothic" const init_script = ` #把Tcl/Tk源代码复制到这个常量里 ` func main() { ir := gothic . NewInterpreter ( init_script ) <- ir . Done } c 在LiteIDE里或命令行里go run go代码文件,运行效果如下 【这700行代码的游戏画面简略抓了7张 风景 ,没把从左到右都抓完,这动画太震撼了】 【需要程序的 (基于win32位编译出来) ,移步 http://pan.baidu.com/s/1jG27DqA 下载( 不需安装 golang 或 tcl/tk 开发环境, 下载解压出来即可运行 )】 来源: oschina 链接: https://my.oschina.net/u/2315579/blog/414097

【深入Cocos2d-x】使用MVC架构搭建游戏Four

半城伤御伤魂 提交于 2019-12-09 20:39:00
喜欢Four这个项目,就赶快在 GitHub 上Star这个项目吧! 喜欢我的文章,来微博关注我吧: 王选易在学C艹 点我下载 ## 项目起源 项目Logo: 下面是该游戏的项目地址,各位想参考源代码的同学可以到我的GitHub上下载该项目的源码。 项目主页 GitHub地址 bug反馈及建议 我做这个项目的原始目的是实验MVC在游戏中的应用。 Model-View-Controller(MVC) 是一种组合设计模式,它体现了一种 关注点分离(Separation of concerns,SoC) 的思想。MVC主要把逻辑层和表现层进行了解耦,将一个问题划分成了不同的关注点。增强了应用的稳定性,易修改性和易复用性。 MVC经常被使用在Web框架中,包括J2EE,RoR和.Net中都对MVC模型进行了框架层面上的封装,以便程序员可以简单方便地作出结构良好的Web应用。 Cocos2d-x本身并没有提供内置的MVC支持,但是,我们还是可以在游戏中基于MVC架构来设计游戏。在这篇博文中,我将向大家展示一下我是如何使用MVC架构来塔尖 Four 这个游戏的。 ## 游戏情景 Four这个游戏的创意来自一个叫做走四棋的传统游戏,走四棋规则的详细介绍在这里: 走四棋的百度百科 。 下面我简单谈一下这个面板游戏(board game)的一些特性 一个4行4列的棋盘(Game Board)

Transform组件C#游戏开发快速入门

蹲街弑〆低调 提交于 2019-12-07 10:24:33
Transform组件C#游戏开发快速入门大学霸 组件( Component )可以看作是一类属性的总称。而属性是指游戏对象上一切可设置、调节的选项,如图 2-8 所示。本文选自 C#游戏开发快速入门大学霸 图 2-8 组件与属性 所有的游戏对象都有 Transform 组件,而 Transform 组件下的各属性,决定了游戏对象的位置、朝向和大小的状态。要修改游戏对象上 Transform 组件下的各属性,必须要指定修改的游戏对象是哪一个,指定的方式有两种: q 直接使用鼠标点选 Scene 视图中要改变状态的游戏对象; q 直接使用鼠标点选 Hierarchy 视图中要改变状态的游戏对象的名称; 然后 Inspector 视图就会将选中的游戏对象的所有可设置的属性显示在其中,如图 2-9 所示。 本文选自 C#游戏开发快速入门大学霸 图 2-9 查看并设置 Directional light 对象 Transform 组件属性的方法 读者可以直接在 Inspector 视图里设置游戏对象的状态,对于 Transform 组件下的各属性, Position 决定位置, Rotation 决定朝向, Scale 决定大小。对属性的修改会实时的反应在 Scene 、 Game 视图中。 本文选自 C#游戏开发快速入门大学霸 来源: oschina 链接: https://my

实例介绍Cocos2d-x开关菜单

放肆的年华 提交于 2019-12-05 06:38:28
开关菜单是 MenuItemToggle 类实现的,它是一种可以进行两种状态切换的菜单。它可以通过下面的函数创建: [html] view plain copy static MenuItemToggle*createWithCallback ( const ccMenuCallback & callback, //菜单操作的回调函数指针 MenuItem * item, //进行切换的菜单项 ... ) 从第二个参数开始都是 MenuItem 类的实例对象,它们是开关菜单显示的菜单项,它们可以是文本、图片和精灵类型的菜单项,但是最后不用忘记 NULL 结尾。 下面代码是简单形式的文本类型的开关菜单: [html] view plain copy auto toggleMenuItem = MenuItemToggle ::createWithCallback( CC_CALLBACK_1(HelloWorld::menuItem1Callback,this), MenuItemFont::create("On" ), MenuItemFont::create("Off"), NULL ); Menu* mn = Menu ::create(toggleMenuItem,NULL); this- > addChild(mn);

如何合理的评估上线服务器数量

这一生的挚爱 提交于 2019-12-05 00:33:05
一、性能指标 我们知道服务器,有 CPU、内存、IO、网络等一系列指标,除了这些系统级的,还有些针对各个语言自己的性能参数,而一个服务器的吞度量与请求对CPU的消耗、外部接口、IO等等紧密关联的 ,面对这么多繁杂的参数我们如何有效而快速的利用,如何评估这些性能参数信息? 下面我以游戏服务器来为例说一下我们主要关注点。 我们主要关注以下3个点: 并发数 :并发请求数 响应时间 :平均响应时间 TPS:每秒钟处理事务数量 TPS =并发数/响应时间 通过上面我们看到,TPS可是反映一个服务器的吞吐量的综合值,他是我们评估服务器性能的一个重要参考,通过tps,我们可以知道单台服务器的最大请求可以处理多少,pcu(同时在线人数)是多少 ,以及配合其他性能参数,我们还可以定位到服务器的性能瓶颈,所以我们预估服务器的性能的时候,TPS是一个关键的参考值。 二、上线前的测试流程 1、测试模型设计 这一部分,也可以叫测试目的的确定,不同测试目的,对测试模型的要求也不一致,测试目的的定位,也决定了每次测试的方案和偏重点会不一样,所以不能一概而全,要区别对待。 我们一般会有一些如下的区分: 服务器TPS测定,也是定位服务器的最大承载量,我们需要优先通过压力测试找到TPS的初始值,然后再进行稳定性测试和容灾测试,找到TPS的稳定值范围在哪里,最终修正TPS值。 性能瓶颈定位,通过压测和关键指标数据的收集

Cocos2dx游戏开发系列笔记2:一个刚创建的cocos2dx中的demo里都有什么

做~自己de王妃 提交于 2019-11-27 20:28:10
烦人的环境终于ok了,改了改文本,换了换图片资源,还是能在手机里运行。ok,关了Eclipse,去vs中看看吧。 虽然是根老骨头了,但还真没怎么用C++,以前接触过点Java的开发框架,估计大差不差。 在VS2012中打开用python命令新建的LazyGame项目。 -------------------- LazyGame -Classes -AppDelegate.cpp -AppDelegate.h -HelloWorldScene.cpp -HelloWorldScene.h -win32 -main.cpp -main.h 外部依赖类 ------------------- main.cpp应该是入口类 里面定义了窗口的标题eglView->setViewName("LazyGame"); 和窗口的大小eglView->setFrameSize(960, 540); 还有AppDelegate的句柄,这个类应该是Cocos2dx主要的控制类。 AppDelegate.cpp主要控制类 里面有三个方法: applicationDidFinishLaunching ();初始化方法,比如Scene的初始化 applicationDidEnterBackground ();游戏临时中断的处理 applicationWillEnterForeground()

python challenge趣味挑战赛

爷,独闯天下 提交于 2019-11-27 11:33:49
第0关 http://www.pythonchallenge.com/pc/def/0.html >>>print 2 ** 38 274877906944L 替换网址为http://www.pythonchallenge.com/pc/def/274877906944.html 第1关 http://www.pythonchallenge.com/pc/def/map.html 是个密码,字母往后移动两位,yz 变为 ab #!/usr/bin/env python # coding: utf-8 # author: toddlerya # date: 2015-1-27 alpha = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] goal = """g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle