Android 2D 遊戲設計基礎

download Android 2D 遊戲設計基礎

If you can't read please download the document

Transcript of Android 2D 遊戲設計基礎

Android

Android 2D Game

Canvas ()

Android SDKViewSurfaceViewCanvas

View

1. View(GameView)

2. View.onDraw

3. OnTouchListener

4.

5. ActivityGameView

Example: Game_View

SurfaceView

1. Canvas

2.

3. UI

SurfaceView

1. SurfaceHolder.lockCanvasCanvas

2. Canvas.drawColor

3. Canvas

4. SurfaceHolder.unlockCanvasAndPost

Example: surfaceview

drawPointdrawPoints

drawLinedrawLines

drawCircle

drawArc

drawTextdrawPosText

Example: draw

(Pixel)

(Pixel)

drawPoint(float x, float y, Paint paint)

X:

Y:

Paint: Paint

(Line)

drawLine (float startX, float startY, float stopX, float stopY, Paint paint)

startXX

startYY

stopXX

stopYY

paint

https://play.google.com/store/apps/details?id=com.bitmango.flowline

(Circle)

DrawCircle(float cx, float cy, float radius, Paint paint)

Cx:

Cy:

Radius:

(Arc)

drawArc(RectF oval, float startAngle, float sweepAngle, boolean useCenter, Paint paint)

oval :startAngle: sweepAngle: useCenter: Truepaint:

(Arc)

useCenter=false

userCenter=true

(Text)

drawText (String text, float x, float y, Paint paint)

Text:

X:

Y:

Paint:

(Bitmap)

1. Bitmap

2. Drawable.draw

Example: drawbitmap

(alpha)

AndroidRGBARedGreenBlueAlphaRGBAlpha

Paint.setAlpha

Example: alpha

Matrix.setRotate

degrees00

Example: rotate_image

(Path)

Canvas.drawPath

PathEffect

CornerPathEffectDashPathEffectPathDashPathEffectComposePathEffect

Example: image_path

Shader

BitmapShader

LinearGradient

RadialGradient

SweepGradient()

ComposeShader

Example: shader

(Frame)

25

1. XMLres/anim

2. AnimationDrawable

Example: frame

(Frame)

(Tween)

Android

Example: translate_tweenscale_tweenrotate_tweenalpha_tween

Property Animation

Android 3.0

Property Animation

1translationX translationYViewlayout00

2rotation, rotationX rotationYView

3scaleX scaleYViewpivotXpivotY

4pivotX pivotY

5x yviewtranslationXtranslationY

6aplha10

XML

XML

XML

propertyNameget/set

duration

valueFrom valueToTranslation

repeatCountrepeatMode

Example:View_anim

property_anim

Contact

E-mail: pinglunliao [at] gmail [dot] com

LINE: Holan.Liao

Skype: pinglunliao

FB: https://www.facebook.com/LiaoPingLun