Properties - kuimoani/defold GitHub Wiki
Properties
μ΄ λ©λ΄μΌμ Defoldμ μ‘΄μ¬νλ νλ‘νΌν°λ€μ μ’ λ₯μ μ΄ νλ‘νΌν°λ₯Ό μ΄λ»κ² μ¬μ©νκ³ μλλ©μ΄μ μ²λ¦¬νλμ§ μ€λͺ ν©λλ€.
Property types
Defoldμμλ μ¬λ¬ κ°μ νλ‘νΌν° μΈνΈκ° μμ΅λλ€.
- μμ€ν μ΄ μ μν κ²μ μ€λΈμ νΈ νΈλμ€νΌ (μμΉ, νμ , μ€μΌμΌ) κ·Έλ¦¬κ³ μ»΄ν¬λνΈλ³ νΉμ νλ‘νΌν°(μλ₯Ό λ€μ΄, μ€νλΌμ΄νΈμ ν½μ μ¬μ΄μ¦λ μΆ©λ μ€λΈμ νΈμ μ§λκ° λ±)
- Lua μ€ν¬λ¦½νΈμ μ μλ μ€ν¬λ¦½νΈ μ»΄ν¬λνΈμ νλ‘νΌν° (μμΈν κ²μ [Script properties](Script properties) λ¬Έμ μ°Έκ³ )
- GUI λ Έλ νλ‘νΌν°
- μμ΄λλ λ©ν°λ¦¬μΌ νμΌμ μ μλ μμ΄λ μμ (μμΈν κ²μ Material λ¬Έμ μ°Έκ³ )
νλ‘νΌν°κ° μ΄λμ μλμ§μ λ°λΌ 보ν΅μ ν¨μ νΉμ νΉμ ν¨μλ₯Ό ν΅ν΄ μ‘μΈμ€ ν μμμ΅λλ€. λ§μ νλ‘νΌν°λ€μ μλμΌλ‘ μλλ©μ΄μ λ μ μμ΅λλ€. λ΄μ₯ μμ€ν μ ν΅ν μ λλ©μ΄μ νλ‘νΌν°λ μ§μ νλ‘νΌν°λ₯Ό λ€λ£¨λ κ²(update() ν¨μ λ΄μμ) λ³΄λ€ μ±λ₯κ³Ό νΈλ¦¬ν¨μ μ΄μ λ‘ κ°λ ₯ν κΆμ₯ν©λλ€.
λν vector3, vector4, quaternion νμμ λ³΅ν© νλ‘νΌν°λ νμ μ»΄ν¬λνΈ(x,y,z,w)λ₯Ό λ ΈμΆνλλ° μ (dot)μ μ΄μ©ν΄ μ΄λ¦μ μ λ―Έμ¬μ λΆμ¬ κ°λ³μ μΌλ‘ μ»΄ν¬λνΈμ μ κ·Όν μ μμ΅λλ€. μλ₯Ό λ€μ΄, κ²μ μ€λΈμ νΈ μμΉμ x μ»΄ν¬λνΈλ₯Ό μμ νλ €λ©΄ μλμ κ°μ΄ ν μ μμ΅λλ€.
-- "game_object"μ x μ’νλ₯Ό 10μΌλ‘ μ
ν
go.set("game_object", "position.x", 10)
go.get(), go.set(), go.animate() ν¨μλ 첫λ²μ§Έ μΈμμ λλ²μ§Έμ νλ‘νΌν° μλ³μλ‘ λ νΌλ°μ€λ₯Ό μ»κ² λ©λλ€. μ΄ λ νΌλ°μ€λ κ²μ μ€λΈμ λλ μ»΄ν¬λνΈλ₯Ό μλ³νλ©° λ¬Έμμ΄μ΄λ ν΄μ¬λ URLμ΄ λ μ μμ΅λλ€. URLμ [Message passing](Message passing) λ¬Έμμ μμΈν μ€λͺ λμ΄ μμ΅λλ€. νλ‘νΌν° μλ³μλ νλ‘νΌν°μ μ΄λ¦μ μ§μ νλ λ¬Έμμ΄ νΉμ ν΄μ¬κ°μ λλ€.
-- sprite μ»΄ν¬λνΈμ x-scale κ°μ λ³κ²½
local url = msg.url("#sprite")
local prop = hash("scale.x")
go.set(url, prop, 2.0)
GUI λ Έλμ κ²½μ°, λ Έλ μλ³μλ νΉμ νλ‘νΌν° ν¨μλ‘ μ 곡λ©λλ€.
-- Get the color of the button
local node = gui.get_node("button")
local color = gui.get_color(node)
System defined game object and component properties
λͺ¨λ κ²μ μ€λΈμ νΈμ λͺλͺ μ»΄ν¬λνΈ νμ μ λ°νμμ μ½κ³ λ€λ£° μ μλ νλ‘νΌν°λ₯Ό κ°μ§κ³ μμ΅λλ€. μ΄ κ°μ go.get()λ‘ μ½κ³ go.set()μΌλ‘ μΈ μ μμΌλ©° νλ‘νΌν° κ°μ νμ μ λ°λΌμ go.animate()μΌλ‘ κ°μ μλλ©μ΄μ μ²λ¦¬ ν μ μμ΅λλ€. λͺλͺ νλ‘νΌν°λ μ½κΈ° μ μ©μ λλ€.
get
go.get()μΌλ‘ μ½μ μ μμ
get+set
go.get()μΌλ‘ μ½κ³ go.set()μΌλ‘ μΈ μ μμ. μ«μν κ°μ go.animate() μΌλ‘ μ λλ©μ΄μ
μ²λ¦¬ κ°λ₯
κ²μ μ€λΈμ νΈμ νλ‘νΌν°λ₯Ό μ½κ³ μΈ μ μλ go.get_position(), go.set_position(), go.get_rotation(), go.set_rotation() λ±λ±μ λ κ±°μ ν¨μλ μμ΅λλ€.
GAME OBJECT PROPERTIES
| position | κ²μ μ€λΈμ νΈμ λ‘컬 μ’νκ° | vector3 |
get+set |
| rotation | κ²μ μ€λΈμ νΈμ λ‘컬 νμ κ° (μΏΌν°λμ¨) | quaternion |
get+set |
| euler | κ²μ μ€λΈμ νΈμ λ‘컬 νμ κ° (μ€μΌλ¬ κ°) | vector3 |
get+set |
| scale | κ²μ μ€λΈμ νΈμ λ‘컬 κ· μΌ(uniform) μ€μΌμΌκ° (1μ΄λ©΄ 100%(μλ³Έ)μ€μΌμΌ) | number |
get+set |
SPRITE COMPONENT PROPERTIES
| size | μ€νλΌμ΄νΈμ ν¬κΈ°κ° μλ, μνλΌμ€ μμ€μμ κ°μ Έμ¨ ν¬κΈ° | vector3 |
get |
| scale | μ€νλΌμ΄νΈμ λΉκ· μΌ(Non uniform) μ€μΌμΌκ°. vectorλ₯Ό μ¬μ©νμ¬ κ° μΆ(axis) λ§λ€ λ€λ₯Έ λΉμ¨μ μ€μ ν μ μμ. xμ yμΆμ λ λ°°λ‘ λλ¦¬λ €λ©΄ vmath.vector3(2.0, 2.0, 0) λ₯Ό μ¬μ©νλ©΄ λ¨ | vector3 |
get+set |
COLLISION OBJECT COMPONENT PROPERTIES
| mass | μΆ©λ μ€λΈμ νΈμ μ§λ | number |
get |
| linear_velocity | μΆ©λ μ€λΈμ νΈμ νμ¬ μ ν μλ | vector3 |
get |
| angular_velocity | μΆ©λ μ€λΈμ νΈμ νμ¬ κ° μλ | vector3 |
get |
| linear_damping | μΆ©λ μ€λΈμ νΈμ μ ν μ λκ° | vector3 |
get+set |
| angular_damping | μΆ©λ μ€λΈμ νΈμ κ° μ λκ° | vector3 |
get+set |
SPINE MODEL COMPONENT PROPERTIES
| animation | νμ¬ μ λλ©μ΄μ | hash |
get |
| skin | νμ¬ λ°μλ λͺ¨λΈμ μ€ν¨(μλλ©μ΄μ λ μ μμ!) | hash |
get+set |
| cursor | μ λλ©μ΄μ μ¬μ 컀μμ νμ¬ μμΉ(0~1 μ¬μ΄) | number |
get+set |
| playback_rate | μ λλ©μ΄μ μ¬μ μλ. κΈ°λ³Έ μ λλ©μ΄μ μλμ λ°°μ(multiplier) | number |
get+set |
MODEL (3D) COMPONENT PROPERTIES
| animation | νμ¬ μ λλ©μ΄μ | hash |
get |
| cursor | μ λλ©μ΄μ μ¬μ 컀μμ νμ¬ μμΉ(0~1 μ¬μ΄) | number |
get+set |
| playback_rate | μ λλ©μ΄μ μ¬μ μλ. κΈ°λ³Έ μ λλ©μ΄μ μλμ λ°°μ(multiplier) | number |
get+set |
GUI node properties
GUI λ Έλ λν νλ‘νΌν°λ₯Ό κ°μ§κ³ μμ§λ§, νΉλ³ν getter, setter ν¨μλ‘ μ½κ³ μΈ μ μμ΅λλ€. κ° νλ‘νΌν°λ get-κ³Ό set- ν¨μ ννλ‘ μ‘΄μ¬νλ©° μ λλ©μ΄μ μ λ§λ€ λ νλ‘νΌν°μ λν μ°Έμ‘°λ‘ μ¬μ©ν μ μλλ‘ λ―Έλ¦¬ μ μλ μμκ° μ 곡λ©λλ€. λ³λ νλ‘νΌν°λ₯Ό μ°Έμ‘°νλ €λ©΄ νλ‘νΌν°μ λ¬Έμμ΄ μ΄λ¦μ΄λ λ¬Έμμ΄ μ΄λ¦μ ν΄μ¬κ°μ μ¬μ©ν΄μΌ ν©λλ€.
- "position" (λλ gui.PROP_POSITION)
- "rotation" (λλ gui.PROP_ROTATION)
- "scale" (λλ gui.PROP_SCALE)
- "color" (λλ gui.PROP_COLOR)
- "outline" (λλ gui.PROP_OUTLINE)
- "shadow" (λλ gui.PROP_SHADOW)
- "size" (λλ gui.PROP_SIZE)
- "fill_angle" (λλ gui.PROP_FILL_ANGLE)
- "inner_radius" (λλ gui.PROP_INNER_RADIUS)
- "slice9" (λλ gui.PROP_SLICE9)
λͺ¨λ μμ κ°μ RGBA κ°μ ν΄λΉνλ vector4λ‘ μΈμ½λ© λ©λλ€.
x - red color y - green color z - blue color w - alpha
GUI NODE PROPERTIES
| color | λ Έλμ μμ | vector4 |
gui.get_color(), gui.set_color() |
| outline | λ Έλμ μΈκ³½μ μ | vector4 |
gui.get_outline(), gui.set_outline() |
| position | λ Έλμ μμΉ | vector3 |
gui.get_position(), gui.set_position() |
| rotation | λ Έλμ νμ κ° (μ€μΌλ¬κ°-κ°κ°μ μΆμ κΈ°μ€μΌλ‘ νμ νλ κ°λ) | vector3 |
gui.get_rotation(), gui.set_rotation() |
| scale | λ Έλμ μ€μΌμΌ(κ°κ°μ μΆμ κΈ°μ€μΌλ‘ μ€μΌμΌλ¨) | vector3 |
gui.get_scale(), gui.set_scale() |
| shadow | λ Έλμ κ·Έλ¦Όμ μμ | vector4 |
gui.get_shadow(), gui.set_shadow() |
| size | λ Έλμ μ€μΌμΌλμ§ μμ μ¬μ΄μ¦(unscaled size) | vector3 |
gui.get_size(), gui.set_size() |
| fill_angle | pie λ Έλμ μμμ μ±μ°κΈ° μν λ°μκ³ λ°©ν₯μ κ°λ | number |
gui.get_fill_angle(), gui.set_fill_angle() |
| inner_radius | pie λ Έλμ λ΄λΆ λ°μ§λ¦ | number |
gui.get_inner_radius(), gui.set_inner_radius() |
| slice9 | slice9 λ Έλμ κ°μ₯μ리 거리(edge distance) | vector4 |
- |