- 浏览: 1088202 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (695)
- 心情日记 (14)
- AS开发工具 (12)
- 文章转载 (99)
- AIR (5)
- 问题总结 (46)
- SWF格式 (7)
- 测试总结 (10)
- 外文资料 (9)
- 算法技术 (33)
- AS3常用开源库 (43)
- 源码范例 (102)
- FLEX (72)
- FLASH 优化 (33)
- 游戏开发 (49)
- 开发技术 (11)
- 工作应用 (34)
- AS3收集 (140)
- WebBase (0)
- 开发构想 (4)
- 设计模式 (2)
- 框架和框架范例 (19)
- RED5 (3)
- java开发 (3)
- JAVA (1)
- FLASH-3D (23)
- 3D (6)
- 书籍 (10)
- 业界信息资料 (3)
- C# (1)
- JavaScript (12)
- HTML5 (6)
- Flixel (1)
- D5Power RPG网页游戏引擎 (0)
- ColorMatrixFilter - 获得相应颜色的色调 函数 (0)
- Starling (0)
最新评论
-
老顽童203:
字体
水果忍者鼠标跟随特效制作[转载] -
hairball00:
[转] 放出超多的Flash组件源代码 -
he74552775:
flash AS3 RegExp简单功能用法(转) -
hanshuai1232000:
第四点,有利也有弊,等你做了大型的aprg,你就知道了
[转]位图数据内存优化 -
yangfantao:
太感谢
[转] 放出超多的Flash组件源代码
http://www.cnblogs.com/heycup/archive/2011/01/25/1944704.html
今天看到同学讲到图片缓冲的应用,原文(http://bbs.9ria.com/thread-61328-1-2.html)
看了下代码,发现还有改进的余地,特地自己实现了一把
改进的地方:改进beginBitmapFill为位图,这个比较耗,用vector代替arrary
不再传递buffer及位图,数据和具体显示分离
简化了部分代码
下面是具体效果
今天看到同学讲到图片缓冲的应用,原文(http://bbs.9ria.com/thread-61328-1-2.html)
看了下代码,发现还有改进的余地,特地自己实现了一把
改进的地方:改进beginBitmapFill为位图,这个比较耗,用vector代替arrary
不再传递buffer及位图,数据和具体显示分离
简化了部分代码
下面是具体效果
package { /** * 运动物品类 * @author heycup@gmail.com */ public class MoveObject { public var x:int; public var y:int; public var sx:int; public var sy:int; public function update():void { x += sx; y += sy; if (x > BitmapBufferTest.w || x < 0){ sx = -sx; } if (y > BitmapBufferTest.h || y < 0){ sy = -sy; } } } }
package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Sprite; import flash.events.Event; import flash.geom.Point; /** * ... * @author heycup@gmail.com */ public class BitmapBufferTest extends Sprite { public static var w:int = 600; public static var h:int = 400; private var objects:Vector.<MoveObject> = new Vector.<MoveObject>(); private var maxNum:uint = 5000; private var bmd:BitmapData; //嵌入子弹图片 [Embed(source='../bin/zhidan.png')] private var ZhiDan:Class; private var zhidanBmd:BitmapData; public function BitmapBufferTest(){ init(); } private function init():void { //获取子弹的bitmapdata var zhidan:Bitmap = new ZhiDan(); zhidanBmd = zhidan.bitmapData; //实例buffer bmd = new BitmapData(w, h, false, 0x000000); var bitmap:Bitmap = new Bitmap(bmd); addChild(bitmap); //实例大量子弹运动类 for (var i:int = 0; i < maxNum; i++){ var moveObject:MoveObject = new MoveObject(); moveObject.x = w * Math.random(); moveObject.y = h * Math.random(); moveObject.sx = Math.random() * 5 + 1; moveObject.sy = Math.random() * 5 + 1; objects.push(moveObject); } //开始运动 addEventListener(Event.ENTER_FRAME, onEnterFrame); } private function onEnterFrame(e:Event):void { bmd.fillRect(bmd.rect, 0x000000); for (var i:int = 0, n:int = objects.length; i < n; i++){ var item:MoveObject = objects[i]; bmd.copyPixels(zhidanBmd, zhidanBmd.rect, new Point(item.x, item.y)); item.update(); } } } }
发表评论
-
HttpStatusConfig --一个HTTP 协议返回的 解析说明类
2012-04-18 16:40 0package guwanyuan.qicool.game ... -
HTTP/1.1协议规范(中文归纳版)
2012-04-18 16:39 2132一、介绍(introduction) ... -
[转] [Flash/Flex] 加载SWF性能VS影片剪辑性能
2012-03-15 22:29 0http://bbs.9ria.com/viewthread. ... -
关于富士通windows 7家庭普通板升级为windows 7旗舰版
2012-03-05 14:51 2026windows7普通家庭版不能一下升级到windows7旗舰版 ... -
水果忍者鼠标跟随特效制作[转载]
2012-03-01 16:06 2457实现这效果其实比较简单,主要是思路~! package ... -
请问如何才能让加载到一半的SWF不自动播放
2012-02-29 03:06 1547我用loader加载l=new Loader(); ... -
禁止输入文本可以粘贴
2012-02-10 13:15 2323//禁止输入文本粘贴动作 private static ... -
江湖情缘游戏里的跳的类
2012-02-08 23:55 0package com.app.role.montions ... -
[教程] 路点导航(Waypoint Navigation)
2011-12-31 00:51 0前言:这个不难,所以知道的童鞋不要喷,不知道的童鞋也不要怕,要 ... -
ARPG游戏引擎设计思路
2011-12-31 00:48 00.整体结构 下载 (32.92 KB ... -
Embed绑定XML与txt文本文件
2011-12-28 15:54 4657使用Embed标签可以将图片绑定到swf中并显示,那么我 ... -
Flash_Rich_Text_Editor(完美的富文本编辑器)
2011-12-27 17:55 0Flash_Rich_Text_Editor(完美的富文 ... -
弹弹堂测试
2011-12-08 04:21 0弹弹堂测试弹弹堂测试 -
一些DEMO
2011-11-28 17:42 0一些DEMO一些DEMO -
Matrix学习
2011-11-28 16:51 0Matrix学习 -
[转]三次贝尔曲线
2011-11-10 01:09 1932http://bbs.9ria.com/viewt ... -
[心得] 完美解决as3在ie中初始化时stageWidth和stageHeight为0的问题
2011-11-03 00:46 2944先看下面的一段脚本,这是比较经典的初始化脚本: pa ... -
五子棋算法详解
2011-10-31 04:14 0五子棋算法详解五子棋算法详解五子棋算法详解 -
[转]服务器端ActionScript语言参考
2011-10-31 00:29 0服务器端ActionScript语言参考 -
[转]FLASH与JS序列简单应用
2011-10-28 01:03 2096FLASH与JS序列简单应用 (一) 用swfob ...
相关推荐
碰撞检测可以帮助判断飞机与敌机或子弹的碰撞,定时器可以控制游戏节奏,如限制射击频率,动画制作则是通过连续显示一系列图片来实现动态效果。 总的来说,这个资源包提供了开发一个简单但完整的2D飞机射击游戏的...
双缓冲技术是解决窗口应用程序中图形更新问题的一种方法,特别是在进行连续动画或快速绘图时,可以避免屏幕闪烁和图像残影。在双缓冲中,我们首先在内存中的一个“后台缓冲区”上完成所有的绘图操作,然后一次性将这...
Graphics类提供了绘制基本图形、文字和图片的方法,开发者可以通过它在窗口上绘制飞机、敌人、子弹等游戏元素。为了实现流畅的动画效果,开发者可能采用了重绘(Repaint)机制。当游戏状态发生变化时,如飞机移动、...
- 渲染优化:避免不必要的重绘,使用缓冲技术提高渲染效率。 7. **存档和加载** - 如果游戏支持保存进度,需要实现数据持久化,可以使用`java.io`包中的类来存储和读取游戏状态。 8. **多线程** - 游戏的主循环...
1. 图片资源的加载与释放:游戏中的图像通常以位图或精灵的形式存储,C#可以使用GDI+库进行加载和绘制。在不使用时,应正确释放资源以避免内存泄漏。 2. 音效和音乐的管理:游戏可能包含多种音效和背景音乐,使用...
SurfaceView提供了双缓冲机制,确保了游戏画面流畅性,而GLSurfaceView则支持OpenGL ES图形库,用于创建复杂的3D效果。 2. 游戏循环:游戏的核心在于主循环(game loop),它负责处理游戏的逻辑、渲染画面以及接收...
4. **多线程**:为了实现游戏的流畅运行,Java的多线程特性可能会被应用。例如,游戏逻辑和用户输入处理可能在一个线程上进行,而图像渲染可能在另一个线程上,避免阻塞。 5. **对象和类的设计**:游戏中的飞机、...
- **双缓冲技术**:避免屏幕闪烁,提高游戏画面的流畅性。 - **内存释放技术**:确保程序运行结束后,正确释放分配的内存,防止内存泄漏。 3. 总体设计与详细设计 - **系统模块划分**:游戏被分为用户界面模块、...
在Android应用开发领域,飞行射击类游戏源码是一种常见的项目类型,它可以帮助开发者深入理解游戏开发的各个环节。这款源码适合计算机科学与技术、软件工程等专业的学生进行毕业设计,以便提升他们的移动应用开发...
C++ MFC(Microsoft Foundation Classes)是微软提供的一套面向对象的类库,用于构建Windows应用程序。MFC基于C++,它封装了Windows API,使得开发者能够更加便捷地进行Windows编程。在这个项目中,我们主要探讨的是...
这个"DirectDraw飞机小游戏源码"提供了一个经典的案例,让我们深入理解DirectDraw在游戏编程中的应用。 首先,`A10.001`可能是一个程序资源文件,通常包含游戏中的图片、声音或其他媒体资源。`SCRIPT1.APS`可能是一...
Java作为一种强大的面向对象的编程语言,因其跨平台性和丰富的类库,常被用于开发各种类型的应用程序,包括游戏。本篇将深入探讨一款名为“飞机大战”的Java游戏项目,该项目源码适合作为毕业设计、课程设计的实践...
这款游戏展示了Java在游戏开发中的应用,虽然可能在某些方面还不够成熟和完善,但它的源代码提供了一个很好的学习和实践平台,让开发者可以了解游戏开发的基本流程和技巧。 在Java编程中,打飞机游戏的核心原理主要...
GDI+(Graphics Device Interface Plus)是Windows操作系统中用于图形绘制和图像处理的一个高级API,它是.NET Framework的一部分,尤其在C#编程中被广泛应用于创建图形界面和游戏开发。在这个"飞机大战"的小游戏中,...
《基于Java的单机版2D飞机大战小游戏》是一个由Java编程语言开发的简单2D游戏,它展示了Java在游戏开发中的应用。这个游戏的核心特点包括玩家控制的飞机与敌机的交互、碰撞检测、得分系统以及游戏循环。下面将详细...
《3D飞行射击游戏——源代码》是一款基于...通过分析并实践这款《3D飞行射击游戏——源代码》,开发者不仅能深入了解DirectX 9.0的应用,还能掌握游戏开发的基本流程和技巧,为自己的游戏开发之路打下坚实的基础。
为了优化,可以采用以下策略:预加载常用资源、使用缓冲技术减少重复绘制、考虑使用轻量级的图像格式或者压缩图片降低内存占用。 5. **动画制作**:在全民飞机大战中,飞机、敌人、子弹等可能都需要动画效果。Java...
此外,可能还有图片资源文件夹,存放游戏中的各种图片素材。 学习这个源码,开发者不仅可以掌握HTML5游戏开发的基本流程,还能深入理解Canvas绘图、JavaScript事件处理、音频操作以及优化技巧。这对于想要从事HTML5...
2. 图像资源管理:使用外部文件引入图片,MIDP2.0的游戏包提供了解决静态和动态图像、双缓冲屏幕刷新等方法。 3. 智能行为实现:玩家飞机通过键盘控制,敌机则需要有预设的运行算法以增加挑战性。 4. 子弹碰撞检测:...
C#的垃圾回收机制可以自动管理一部分资源,但开发者仍需注意手动管理如纹理、音频缓冲等非托管资源。 8. **音效与音乐**:C#支持集成各种音频库,用于播放背景音乐和音效。这些库提供API来控制音频的播放、暂停和...