## **part_type_orientation**
**设置粒子的朝向。**
#### **语法:**
part_type_orientation( ind, ang_min, ang_max, ang_incr, ang_wiggle, ang_relative );
| 参数 | 描述 |
| --- | --- |
| ind | 粒子类型ID |
| ang_min | 粒子的最小起始朝向角度 |
| ang_max | 粒子的最大起始朝向角度 |
| ang_incr | 每步增加(或减小,如果为负值)的朝向角度 |
| ang_wiggle | 朝向角度每步顺时针/逆时针摆动的量 |
| ang_relative | 是(true)否(false)相对于粒子的运动方向设置角度 |
**返回:** N/A
#### **描述**
该函数用于确定粒子精灵创建时的朝向,也可用于使粒子朝向在生命周期内进行改变。最小和最大朝向的默认值都为0,但可以按照GameMaker Studio 2标准的方向0度向右,90度向上,180度向左和270度向下进行改变,也可以设置不同值来随机化方向。如果将它们设置为相同的值,则粒子将全部以相同的方向创建。
您还可以设置一个增量值,该增量值将在生命周期的每一步增加(正数)或减少(负数)朝向的角度。该值可以是(+/-)0.01的最小值。
您也可以设置“摆动”因子,与其他粒子功能相同。这是一个在粒子生命周期内每步都随机添加或减去粒子朝向的角度值。显然,较大的值比较小的值更明显,而这个值甚至可以是负值,最大范围在-20和20之间。
最后,你可以选择是否相对于粒子的运动方向设置角度,也就是说,当粒子开始运动时,粒子的朝向会跟随运动方向而改变。值得注意的是,如果粒子的速度因为减少而变为0的时候,那么他的朝向为将为0°,所以相对取向将导致粒子精灵“跳”到另一个朝向。
#### **举例:**
~~~
part_type_shape(particle2, pt_shape_spark);
part_type_size(particle2, 0.10, 0.50, 0.01, 0);
part_type_scale(particle2, 0.30, 0.30);
part_type_colour1(particle2, 8454143);
part_type_alpha1(particle2, 0.50);
part_type_speed(particle2, 4, 4, -0.07, 1);
part_type_direction(particle2, 0, 359, 0, 20);
part_type_orientation(particle2, 0, 359, 0, 20, 1);
part_type_blend(particle2, 1);
part_type_life(particle2, 1, 5);
~~~
上面的代码将设置各种粒子值,包括在0到359之间的随机值的朝向。它也会每一步随机的数量加在它的每一步0到20之间的任何地方,而且方向是相对于运动的方向调整
- 简言
- 额外接口
- asset_get_index
- asset_get_type
- 粒子(PARTICLE)
- 简单粒子系统
- effect_create_below
- effect_create_above
- effect_clear
- ef_all
- 粒子系统
- 粒子系统的创建
- part_system_exists
- part_system_create
- part_system_create_layer
- part_system_get_layer
- part_system_layer
- part_system_clear
- part_system_depth
- part_system_position
- part_system_destroy
- part_particles_clear
- part_particles_count
- 系统绘图
- part_system_automatic_update
- part_system_automatic_draw
- part_system_update
- part_system_drawit
- part_system_draw_order
- 直接创建粒子
- part_particles_create
- part_particles_create_colour
- 粒子类型
- part_type_exists
- part_type_create
- part_type_destroy
- part_type_clear
- part_type_shape
- part_type_sprite
- part_type_size
- part_type_scale
- part_type_speed
- part_type_direction
- part_type_gravity
- part_type_orientation
- part_type_colour_mix
- part_type_colour_rgb
- part_type_colour_hsv
- part_type_colour1
- part_type_colour2
- part_type_colour3
- part_type_alpha1
- part_type_alpha2
- part_type_alpha3
- part_type_blend
- part_type_life
- part_type_step
- part_type_death
- 粒子发射器
- part_emitter_exists
- part_emitter_create
- part_emitter_clear
- part_emitter_region
- part_emitter_burst
- part_emitter_stream
- part_emitter_destroy
- part_emitter_destroy_all
- 数组(array)
- 数据结构(Data structures)
- 心得分享
- ds_exists
- ds_set_precision
- 网格(grid)
- ds_grid_create
- ds_grid_destroy
- ds_grid_width
- ds_grid_height
- ds_grid_resize
- ds_grid_clear
- ds_grid_set
- ds_grid_set_disk
- ds_grid_set_grid_region
- ds_grid_set_region
- ds_grid_shuffle
- ds_grid_sort
- ds_grid_get
- ds_grid_get_max
- ds_grid_get_mean
- ds_grid_get_min
- ds_grid_get_sum
- ds_grid_get_disk_max
- ds_grid_get_disk_mean
- ds_grid_get_disk_min
- ds_grid_get_disk_sum
- ds_grid_add
- ds_grid_add_region
- ds_grid_add_disk
- ds_grid_add_grid_region
- ds_grid_multiply
- ds_grid_multiply_disk
- ds_grid_multiply_region
- ds_grid_multiply_grid_region
- ds_grid_value_exists
- ds_grid_value_disk_exists
- ds_grid_value_x
- ds_grid_value_y
- ds_grid_value_disk_x
- ds_grid_value_disk_y
- ds_grid_copy
- ds_grid_read
- ds_grid_write
- 列表(list)
- 映射(map)
- 队列(Queues)
- 优先队列(Priority Queues)
- 堆栈(stack)