Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

draw_ #54

Open
drewmccluskey opened this issue Nov 23, 2018 · 0 comments
Open

draw_ #54

drewmccluskey opened this issue Nov 23, 2018 · 0 comments
Assignees
Labels
Projects

Comments

@drewmccluskey
Copy link
Collaborator

drewmccluskey commented Nov 23, 2018

Draw Simple Shapes

  • ✔️draw_arrow
  • ✔️draw_circle --> added optional arg thickness
  • ✔️draw_circle_color
  • 💡 draw_circle_fast
  • ✔️draw_ellipse
  • draw_ellipse_color
  • ✔️draw_line
  • ✔️draw_line_color
  • ✔️draw_line_width
  • ✔️draw_line_width_color
  • ✔️draw_point
  • ✔️draw_point_color
  • ✔️ draw_rectangle
// GM classic
draw_rectangle(x1, y1, x2, y2, outline)

// Simplex vector standard
draw_rectangle(vec2 position, vec2 size, bool outline)

// Possible extensions
draw_rectangle(vec2 position, vec2 size, bool outline, float lineSize)
draw_rectangle(vec2 position, vec2 size, bool outline, float lineSize, float angle)
draw_rectangle(x1, y1, x2, y2, bool outline, float lineSize)
draw_rectangle_ext(x1, y1, x2, y2, bool outline, float lineSize, float originX, float originY, float width, float height, float angle)
  • draw_rectangle_color
    Let's stick with color for sake of consistency with System.Drawing.Color

  • ✔️draw_roundrect

  • draw_roundrect_color

  • draw_roundrect_ext

  • draw_roundrect_color_ext

  • ✔️draw_triangle

  • draw_triangle_color

Draw Extra

  • draw_set_circle_precision
  • draw_button
  • draw_healthbar
  • draw_path

Sprites

  • ✔️ draw_self
  • ✔️draw_sprite
  • draw_sprite_ext
  • draw_sprite_general
  • draw_sprite_part
  • draw_sprite_part_ext
  • draw_sprite_stretched
  • draw_sprite_stretched_ext
  • draw_sprite_pos
  • draw_sprite_tiled
  • draw_sprite_tiled_ext

Backgrounds

  • draw_background
  • draw_background_ext
  • draw_background_part
  • draw_background_part_ext
  • draw_background_stretched
  • draw_background_stretched_ext
  • draw_background_tiled
  • draw_background_tiled_ext
  • draw_background_general

Primitives

  • draw_primitive_begin
  • draw_primitive_begin_texture
  • draw_primitive_end
  • draw_vertex
  • draw_vertex_color
  • draw_vertex_texture
  • draw_vertex_texture_color

Surfaces

  • draw_surface
  • draw_surface_ext
  • draw_surface_part
  • draw_surface_part_ext
  • draw_surface_stretched
  • draw_surface_stretched_ext
  • draw_surface_tiled
  • draw_surface_tiled_ext
  • draw_surface_general

SWF

  • draw_enable_swf_aa
  • draw_set_swf_aa_level
  • draw_get_swf_aa_level

Skeleton

  • draw_skeleton
  • draw_skeleton_collision
  • draw_skeleton_time

Text

  • draw_set_font
  • draw_set_halign
  • draw_set_valign
  • ✔️draw_text
  • draw_text_ext
  • draw_text_color
  • draw_text_transformed
  • draw_text_ext_color
  • draw_text_ext_transformed
  • draw_text_transformed_color
  • draw_text_ext_transformed_color
  • draw_highscore

Color and Blending

  • draw_clear
  • draw_clear_alpha
  • ✔️ draw_set_alpha
    As XNA4 defaults with premultiplied alpha (can be turned off but why would we cast byte->double on each batch), we will use this inner implementation. Therefore:
/*old*/ Color c = new Color(255, 0, 0, 128) // red, half alpha 
/*new*/ Color c = new Color(255, 0, 0, 255) * 0.5f // same output
  • ✔️ draw_set_color

  • draw_set_color_write_enable

  • draw_set_blend_mode

  • draw_set_blend_mode_ext

  • draw_set_alpha_test

  • draw_set_alpha_test_ref_value

  • draw_get_alpha_test

  • draw_get_alpha_test_ref_value

  • draw_enable_alphablend

  • ✔️draw_get_alpha

  • ✔️draw_get_color

  • draw_get_valign

  • draw_get_halign

Textures

  • texture_get_width
  • texture_get_height
  • texture_get_texel_width
  • texture_get_texel_height
  • texture_set_interpolation
  • texture_set_interpolation_ext
  • texture_set_blending
  • texture_set_repeat
  • texture_set_repeat_ext
  • texture_set_stage
  • texture_global_scale

Other

  • draw_texture_flush
  • draw_enable_drawevent

Possible to add

  • draw_curve
  • draw_curve_color
  • draw_curve_width
  • draw_curve_width_color
@lofcz lofcz added the GM port label Nov 23, 2018
@Lajky12 Lajky12 added this to Matěj in LoF Dec 7, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
LoF
Matěj
Development

No branches or pull requests

2 participants