рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ libGDX рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ - рднрд╛рдЧ 2 (рдЪрд┐рддреНрд░ рдмрдирд╛рдирд╛)

рдореИрдВ рдЖрдкрдХреЗ рд▓рд┐рдП libGDX рдкрд░ рджреВрд╕рд░реЗ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реВрдВред рдореВрд▓ рдпрд╣рд╛рдБ рд╣реИ ред рдкрд╣рд▓рд╛ рднрд╛рдЧ рдпрд╣рд╛рдБ рд╣реИ ред

рдпрд╣ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдУрдкрдирдЧреЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдирд╛ рд╣реИ рдФрд░ рдХреИрд╕реЗ libGDX рд╕реНрдкреНрд░рд╛рдЗрдЯрдмрд╛рдЗрдЯ рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рд░рд▓ рдФрд░ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдПрдХ рд╡рд┐рдЪрд╛рд░ рджреЗрддрд╛ рд╣реИред

рдЪрд┐рддреНрд░ рдмрдирд╛рдирд╛ред



рдЕрдкрдиреЗ рдореВрд▓ рдкреНрд░рд╛рд░реВрдк (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, PNG) рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЫрд╡рд┐ рдФрд░ GPU рдореЗрдВ рд▓реЛрдб рдХреА рдЧрдИ рдПрдХ рдмрдирд╛рд╡рдЯ рдХрд╣рд▓рд╛рддреА рд╣реИред рдмрдирд╛рд╡рдЯ рдХреБрдЫ рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЦреАрдВрдЪреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдХрд┐ рдЬреНрдпрд╛рдорд┐рддреАрдп рдЖрдХреГрддрд┐ рдХрд╛ рд╡рд░реНрдгрди рд╣реИ рдФрд░ рдЗрд╕ рдЖрдХреГрддрд┐ рдХреЗ рд╢реАрд░реНрд╖реЛрдВ рдкрд░ рдмрдирд╛рд╡рдЯ рдХреИрд╕реЗ рд╕рдорд░реВрдк рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЬреНрдпрд╛рдорд┐рддреАрдп рдЖрдХреГрддрд┐ рдПрдХ рдЖрдпрдд рд╣реЛ рд╕рдХрддреА рд╣реИ рдФрд░ рдЖрдпрдд рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдиреЗ рдмрдирд╛рд╡рдЯ рдХреЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреЛрдиреЗ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред


рдбреНрд░рд╛рдЗрдВрдЧ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдмрдирд╛рд╡рдЯ рдХреЛ рд╡рд░реНрддрдорд╛рди (рддрдбрд╝рдХрдирд╛) рдмрдирд╛рдпрд╛ рдЬрд╛рдП рдФрд░ рдЬреНрдпрд╛рдорд┐рддрд┐ рдХреЛ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЙрд╕ рдЬрдЧрд╣ рдХрд╛ рдЖрдХрд╛рд░ рдФрд░ рд╕реНрдерд╛рди рдЬрд╣рд╛рдВ рдмрдирд╛рд╡рдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рдПрдЧреА, рдЬреНрдпрд╛рдорд┐рддрд┐ рдФрд░ рдУрдкрдирдЬреАрдПрд▓ рд╡реНрдпреВрдкреЛрд░реНрдЯ рдХреА рд╕реЗрдЯрд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рд╕реНрдХреНрд░реАрди рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рд╕реЗ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ 2D рдЧреЗрдореНрд╕ рд╡реНрдпреВрдкреЛрд░реНрдЯ рдХреЛ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЬреНрдпрд╛рдорд┐рддрд┐ рдкрд┐рдХреНрд╕реЗрд▓ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕реНрдХреНрд░реАрди рдкрд░ рдЙрдЪрд┐рдд рдЖрдХрд╛рд░ рдФрд░ рд╕рд╣реА рдЬрдЧрд╣ рдХреЗ рдмрдирд╛рд╡рдЯ рдХреЛ рдЦреАрдВрдЪрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдмрд╣реБрдд рдмрд╛рд░, рдмрдирд╛рд╡рдЯ рдкреЗрдВрдЯрд┐рдВрдЧ рдЖрдпрддрд╛рдХрд╛рд░ рдЬреНрдпрд╛рдорд┐рддрд┐ рдореЗрдВ рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдмрд╣реБрдд рдмрд╛рд░ рдПрдХ рдмрдирд╛рд╡рдЯ рдпрд╛ рдЙрд╕рдХреЗ рд╡рд┐рднрд┐рдиреНрди рднрд╛рдЧреЛрдВ рдХреЛ рдХрдИ рдмрд╛рд░ рдЦреАрдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИред GPU рдореЗрдВ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдпрдд рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЕрдХреНрд╖рдо рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдПрдХрд▓ рдмрдирд╛рд╡рдЯ рдХреЗ рд▓рд┐рдП рдХрдИ рдЖрдпрддреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕рднреА рдХреЛ рдПрдХ рд╕рд╛рде GPU рдкрд░ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рд╡рд░реНрдЧ рдХрд░рддрд╛ рд╣реИред

рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЖрдпрдд рдХреА рдмрдирд╛рд╡рдЯ рдФрд░ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдорд┐рд▓рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рдпрд╣ рдмрдирд╛рд╡рдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рдПрдЧреАред рдпрд╣ рдЬреАрдкреАрдпреВ рдХреЛ рднреЗрдЬреЗ рдмрд┐рдирд╛ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдВрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЬрдм рдпрд╣ рдПрдХ рдмрдирд╛рд╡рдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкрд┐рдЫрд▓реЗ рднрд░реА рд╣реБрдИ рдмрдирд╛рд╡рдЯ рд╕реЗ рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкрд┐рдЫрд▓реА рд▓реЛрдб рдХреА рдЧрдИ рдмрдирд╛рд╡рдЯ рдХреЛ рд╕рдХреНрд░рд┐рдп рдмрдирд╛рддрд╛ рд╣реИ, рд╕рдВрдЪрд┐рдд рдбреНрд░рд╛рдЗрдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ GPU рдкрд░ рднреЗрдЬрддрд╛ рд╣реИ, рдФрд░ рдЕрдЧрд▓реА рдмрдирд╛рд╡рдЯ рдХреЗ рд▓рд┐рдП рдЖрд░реЗрдЦрдг рдбреЗрдЯрд╛ рд╕рдВрдЪрдп рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред

рд╣рд░ рдХреБрдЫ рдЖрдпрддреЛрдВ рдХреЛ рдмрдирд╛рд╡рдЯ рдореЗрдВ рдмрджрд▓рдиреЗ рд╕реЗ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдХреЛ рдХрд╛рдлреА рдХреБрдЫ рдЖрдпрддреЛрдВ рдХреЛ рд╕рдореВрд╣реАрдХреГрдд рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдЯреЗрдХреНрд╕рдЪрд░ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛рдлреА рдорд╣рдВрдЧрд╛ рдСрдкрд░реЗрд╢рди рд╣реИред рдЗрди рдХрд╛рд░рдгреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╡реЗ рдЕрдХреНрд╕рд░ рдПрдХ рдмрдбрд╝реА рдЫрд╡рд┐ рдореЗрдВ рдХрдИ рдЫреЛрдЯреА рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдПрдХ рдмрдбрд╝реА рдЫрд╡рд┐ рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдмрдирд╛рд╡рдЯ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдФрд░ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдЪрд┐рдд рдЖрдпрддреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЕрдзрд┐рдХрддрдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП TexturePacker рджреЗрдЦреЗрдВред

рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ (рд╕реНрдкреНрд░рд╛рдЗрдЯ рдкреИрдХрд░)


рдПрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

public class Game implements ApplicationListener { private SpriteBatch batch; public void create () { batch = new SpriteBatch(); } public void render () { Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); //     batch.begin(); //   ! batch.end(); } public void resize (int width, int height) { } public void pause () { } public void resume () { } public void dispose () { } } 


рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдХреЙрд▓ рдХреЛ рдЖрд░рдВрдн () рдФрд░ рдЕрдВрдд () рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрдиреНрдп рд╕рд╛рдзрдиреЛрдВ рджреНрд╡рд╛рд░рд╛ (рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рд╡рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ) рдбреНрд░рд╛рдЗрдВрдЧ рдХреЗ рддрд░реАрдХреЛрдВ рдХреА рдУрд░ рд╢реБрд░реБрдЖрдд () рдФрд░ рдЕрдВрдд () рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдмрдирд╛рд╡рдЯ (рдмрдирд╛рд╡рдЯ)


рдмрдирд╛рд╡рдЯ рд╡рд░реНрдЧ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдПрдХ рдЫрд╡рд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ GPU рдореЗрдВ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рдЫрд╡рд┐ рдлрд╝рд╛рдЗрд▓ рдХреЛ "рд╕рдВрдкрддреНрддрд┐" рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ (рд╕рдВрджрд░реНрдн) рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗрдЯрдЕрдк рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИред рдЫрд╡рд┐ рдХрд╛ рдЖрдХрд╛рд░ рджреЛ (16x16, 64x256, рдЖрджрд┐) рдХреА рд╢рдХреНрддрд┐ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

 private Texture texture; ... texture = new Texture(Gdx.files.internal("image.png")); ... batch.begin(); batch.draw(texture, 10, 10); batch.end(); 


рдпрд╣ рдПрдХ рдмрдирд╛рд╡рдЯ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдкреНрд░рддрд┐рдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рд╡рд░реНрдЧ рдореЗрдВ рднреЗрдЬрддрд╛ рд╣реИред рдмрдирд╛рд╡рдЯ рдПрдХ рдЖрдпрдд рдореЗрдВ рдЦреАрдВрдЪреА рдЧрдИ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдирд┐рдЪрд▓реЗ рдмрд╛рдПрдБ рдХреЛрдиреЗ рдХреЛ рдмрд┐рдВрджреБ (10, 10) рдкрд░ рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХреА рдмрдирд╛рд╡рдЯ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдмрд░рд╛рдмрд░ рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдБрдЪрд╛рдИ рд╣реИред рд╕реНрдкреНрд░рд┐рдЯрдмреИрдЪ рдореЗрдВ рдмрдирд╛рд╡рдЯ рдХреЛ рдЪрд┐рддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ:

 draw(Texture texture, float x, float y) 
рдмрдирд╛рд╡рдЯ рдХреЗ рдЖрдпрд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ x, y рдкрд░ рдПрдХ рдмрдирд╛рд╡рдЯ рдмрдирд╛рддрд╛ рд╣реИ

 draw(Texture texture, float x, float y, int srcX, int srcY, int srcWidth, int srcHeight) 
рдПрдХ рдмрдирд╛рд╡рдЯ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдЦреАрдВрдЪрддрд╛ рд╣реИред

 draw(Texture texture, float x, float y, float width, float height, int srcX, int srcY, int srcWidth, int srcHeight, boolean flipX, boolean flipY) 
рдЪреМрдбрд╝рд╛рдИ * рдКрдБрдЪрд╛рдИ рддрдХ рдлреИрд▓реЗ рдмрдирд╛рд╡рдЯ рдХрд╛ рдПрдХ рднрд╛рдЧ рдЦреАрдВрдЪрддрд╛ рд╣реИ, рдФрд░ рд╕рдВрднрд╡рддрдГ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рддрд╛ рд╣реИред

 draw(Texture texture, float x, float y, float originX, float originY, float width, float height, float scaleX, float scaleY, float rotation, int srcX, int srcY, int srcWidth, int srcHeight, boolean flipX, boolean flipY) 
рдпрд╣ рд░рд╛рдХреНрд╖рд╕реА рд╡рд┐рдзрд┐ рд╕рдВрдкреАрдбрд╝рди (рдЦреАрдВрдЪ), рдПрдХ рдмрд┐рдВрджреБ рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдШреВрдордиреЗ рдФрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рдмрдирд╛рд╡рдЯ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдЦреАрдВрдЪрддреА рд╣реИред

 draw(Texture texture, float x, float y, float width, float height, float u, float v, float u2, float v2) 
рдЪреМрдбрд╝рд╛рдИ * рдКрдБрдЪрд╛рдИ рддрдХ рдлреИрд▓реЗ рдмрдирд╛рд╡рдЯ рдХрд╛ рдПрдХ рднрд╛рдЧ рдЦреАрдВрдЪрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд╡рд┐рдзрд┐ рд╣реИред рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдкрд┐рдХреНрд╕реЗрд▓ рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

 draw(Texture texture, float[] spriteVertices, int offset, int length) 
рдмреБрдирд╛рд╡рдЯ рдХреЗ рднрд╛рдЧ рдХреЛ рд╕реНрдкреНрд░рд╛рдЗрдЯрд╡рд░реНрдЯрд┐рдХрд▓реНрд╕ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЖрдХреГрддрд┐ рдкрд░ рдЦреАрдВрдЪрдХрд░

рдмрдирд╛рд╡рдЯ (рдмрдирд╛рд╡рдЯ рдХреНрд╖реЗрддреНрд░ рдпрд╛ рдмрдирд╛рд╡рдЯ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛)


TextureRegion рд╡рд░реНрдЧ рдПрдХ рдмрдирд╛рд╡рдЯ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдЖрдпрдд рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдмрдирд╛рд╡рдЯ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

 private TextureRegion region; ... texture = new Texture(Gdx.files.internal("image.png")); region = new TextureRegion(texture, 20, 20, 50, 50); ... batch.begin(); batch.draw(region, 10, 10); batch.end(); 


рдпрд╣рд╛рдВ 20, 20, 50, 50 рдмрдирд╛рд╡рдЯ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рддрдм рдмрд┐рдВрджреБ (10, 10) рдкрд░ рдЦреАрдВрдЪрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕реНрдкреНрд░рд┐рдЯрдмреИрдЪ рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдмрдирд╛рд╡рдЯ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдХреЗ рдПрдХ рд╣реА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЯреЗрдХреНрд╕реБрд░реЗрд░реЗрдЬрд┐рдпрди рд╡рд░реНрдЧ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдЕрд▓рдЧ рд╡рд╕реНрддреБ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╛рдж рд░рдЦрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред

SpriteBatch рдореЗрдВ TextureRegion рдбреНрд░рд╛рдЗрдВрдЧ рдХреЗ рд▓рд┐рдП рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ:

 draw(TextureRegion region, float x, float y) 
- рдХреНрд╖реЗрддреНрд░ рдХреА рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдХреНрд╖реЗрддреНрд░ рдмрдирд╛рддрд╛ рд╣реИред

 draw(TextureRegion region, float x, float y, float width, float height) 
- рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИ рддрдХ рдПрдХ рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕рдВрдХреБрдЪрд┐рдд (рдлреИрд▓рд╛ рд╣реБрдЖ) рдЦреАрдВрдЪрддрд╛ рд╣реИред

 draw(TextureRegion region, float x, float y, float originX, float originY, float width, float height, float scaleX, float scaleY, float rotation) 
- рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИ рддрдХ рдлреИрд▓рд╛ рд╣реБрдЖ рдХреНрд╖реЗрддреНрд░ (рд╕рдВрдХреБрдЪрд┐рдд) рдЦреАрдВрдЪрддрд╛ рд╣реИ, рдЬреЛ рдмрд┐рдВрджреБ рдУрд░рд┐рдЬрд┐рдиреЗрд▓, рдУрд░рд┐рдЬреА рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╕реНрдХреЗрд▓ рдФрд░ рд░реЛрдЯреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд░рдЦрддрд╛ рд╣реИред

рд╕реНрдкреНрд░рд╛рдЗрдЯ (рд╕реНрдкреНрд░рд╛рдЗрдЯ)


рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╡рд░реНрдЧ рдмрдирд╛рд╡рдЯ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рд╡рд╣ рд╕реНрдерд╛рди рдЬрд╣рд╛рдВ рдпрд╣ рдХреНрд╖реЗрддреНрд░ рдЦреАрдВрдЪрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рд╡рд╣ рд░рдВрдЧ рдЬреЛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ (рд░рдВрдЧ рдХреЗ рд▓рд┐рдП рд░рдВрдЧ - рд░рдВрдЧ рдХреЗ рд╕рд╛рде рдЫрд╛рдпрд╛рдВрдХрди)ред

 private Sprite sprite; ... texture = new Texture(Gdx.files.internal("image.png")); sprite = new Sprite(texture, 20, 20, 50, 50); sprite.setPosition(10, 10); sprite.setRotation(45); ... batch.begin(); sprite.draw(batch); batch.end(); 


рдпрд╣рд╛рдВ 20, 20, 50, 50 рдмрдирд╛рд╡рдЯ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ 45 рдбрд┐рдЧреНрд░реА рдШреБрдорд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдлрд┐рд░ рдмрд┐рдВрджреБ (10, 10) рдкрд░ рдЦреАрдВрдЪрд╛ рдЬрд╛рдПрдЧрд╛ред рд╡рд╣реА рдмреБрдирд╛рд╡рдЯ рдпрд╛ рдЙрд╕рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдХреЗ рдФрд░ рдЕрдиреНрдп рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╡рд░реНрдЧ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд╕рднреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╡рд░реНрдЧ рдЕрдкрдиреЗ рдЕрдВрджрд░ рдЬреНрдпрд╛рдорд┐рддрд┐ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рддрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИ, рдЬрдм рд╕реНрдХреЗрд▓рд┐рдВрдЧ, рд░реЛрдЯреЗрд╢рди, рдпрд╛ рдЕрдиреНрдп рдЧреБрдгреЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдлреНрд░реЗрдо рдХреЗ рдмреАрдЪ рдирд╣реАрдВ рдмрджрд▓рддреЗ рд╣реИрдВред

рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╡рд░реНрдЧ рдореЙрдбрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА (рд╕реНрдерд╛рди, рд░реЛрдЯреЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА, рдФрд░ рдЕрдиреНрдп) рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдорд┐рд▓рд╛рддрд╛ рд╣реИ (рдмрдирд╛рд╡рдЯ рдЙрд╕реА рд╡рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рддреИрдпрд╛рд░ рдХреА рдЧрдИ рдереА)ред рдпрд╣ рд╕реНрдкреНрд░рд╛рдЗрдЯ рдХреЛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдЪрд┐рдд рдмрдирд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рдореЙрдбрд▓ рдХреЛ рджреГрд╢реНрдп рд╕реЗ рд╕рдЦреНрддреА рд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, Texture рдпрд╛ TextureRegion рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордЭ рдЖ рд╕рдХрддреА рд╣реИред

рдЯрд┐рдирдЯрд┐рдВрдЧ (рд░рдВрдЧ)


рдЬрдм рдПрдХ рдмрдирд╛рд╡рдЯ рдЦреАрдВрдЪреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдЗрд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд░рдВрдЧ рдореЗрдВ рдЪрд┐рддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 private Texture texture; private TextureRegion region; private Sprite sprite; ... texture = new Texture(Gdx.files.internal("image.png")); region = new TextureRegion(texture, 20, 20, 50, 50); sprite = new Sprite(texture, 20, 20, 50, 50); sprite.setPosition(100, 10); sprite.setColor(0, 0, 1, 1); ... batch.begin(); batch.setColor(1, 0, 0, 1); batch.draw(texture, 10, 10); batch.setColor(0, 1, 0, 1); batch.draw(region, 50, 10); sprite.draw(batch); batch.end(); 


рдпрд╣ рдХреЛрдб рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдмрдирд╛рд╡рдЯ, рдЙрд╕рдХреЗ рдХреНрд╖реЗрддреНрд░ рдФрд░ рд░рдВрдЧ рдореЗрдВ рд░рдВрдЧ рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░реЗрдд рдХреИрд╕реЗ рдЖрдХрд░реНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЖрд░рдЬреАрдмреАрдП рдореЙрдбрд▓ рдореЗрдВ рд░рдВрдЧ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ 0 рд╕реЗ 1. рддрдХ рд╣реИред рдЕрд▓реНрдлрд╛ рдЪреИрдирд▓ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрджрд┐ рд╕рдореНрдорд┐рд╢реНрд░рдг рдЕрдХреНрд╖рдо рд╣реИред

рд╕рдореНрдорд┐рд╢реНрд░рдг (cmeshivanie)


рдорд┐рд╢реНрд░рдг рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЬрдм рдмрдирд╛рд╡рдЯ рдЦреАрдВрдЪреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдЗрд╕ рдмрдирд╛рд╡рдЯ рдХреЗ рдкрд╛рд░рджрд░реНрд╢реА рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рдЙрди рдкрд┐рдХреНрд╕реЗрд▓ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рд╕реНрдерд╛рди рдкрд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдЦреАрдВрдЪреЗ рдЧрдП рд╣реИрдВред

рдЬрдм рдорд┐рд╢реНрд░рдг рдХреЛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬреЛ рдХреБрдЫ рднреА рдерд╛ рд╡рд╣ рдЗрд╕ рдЬрдЧрд╣ рдкрд░ рдЦреАрдВрдЪреА рдЧрдИ рдмрдирд╛рд╡рдЯ рд╕реЗ рдорд┐рдЯ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЖрдк рд╣рдореЗрд╢рд╛ рдорд┐рд╢реНрд░рдг рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдкреВрд░реНрдг рд╕реНрдХреНрд░реАрди рдореЗрдВ рдПрдХ рдмрдбрд╝реА рдкреГрд╖реНрдарднреВрдорд┐ рдЫрд╡рд┐ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╕рдореНрдорд┐рд╢реНрд░рдг рдЕрдХреНрд╖рдо рдХрд░рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); //     batch.begin(); batch.disableBlending(); backgroundSprite.draw(batch); batch.enableBlending(); //     batch.end(); 


рдиреЛрдЯред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕реНрдХреНрд░реАрди рд╣рд░ рдлреНрд░реЗрдо рдХреЛ рд╕рд╛рдл рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЕрд▓реНрдлрд╛ рдЪреИрдирд▓ рд╕реЗ рдмрдирд╛рд╡рдЯ рдХрдИ рдмрд╛рд░ рдЕрдкрдиреЗ рдКрдкрд░ рдЦреАрдВрдЪреА рдЬрд╛рдПрдЧреА, рдЬреЛ рдХрд┐ рдЧрд▓рдд рдкреНрд░рднрд╛рд╡ рджреЗрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреБрдЫ рд╡реАрдбрд┐рдпреЛ рддреНрд╡рд░рдХ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк рдкреВрд░реНрдг рд╕реНрдХреНрд░реАрди рдореЗрдВ рдПрдХ рдЪрд┐рддреНрд░ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕реНрдХреНрд░реАрди рдХреЛ рд╣рд░ рдлреНрд░реЗрдо рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рддреЗ рд╣реИрдВред

рд╡реНрдпреВрдкреЛрд░реНрдЯ (рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рдХреНрд╖реЗрддреНрд░)


рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдХрд╛ рдЕрдкрдирд╛ рдкреНрд░рдХреНрд╖реЗрдкрдг рдФрд░ рдкрд░рд┐рд╡рд░реНрддрди рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╣реИред рдЬрдм рд╕реНрдкреНрд░рд╛рдЗрдЯрдмрдЪ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдпреВ рдЕрдХреНрд╖ рдХреЗ рд╕рд╛рде рд╕рдордиреНрд╡рдп рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрд░реНрдереЛрдЧреЛрдирд▓ рдкреНрд░рдХреНрд╖реЗрдкрдг рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЖрдпрд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рдЬреЛ рдХрд┐, 0, 0 рд╕реНрдХреНрд░реАрди рдХреЗ рдирд┐рдЪрд▓реЗ рдмрд╛рдПрдВ рдХреЛрдиреЗ рд╣реИ - рд▓рдЧрднрдЧред рдЕрдиреБрд╡рд╛рджрдХ)ред рдЬрдм рд╕реНрдЯрд╛рд░реНрдЯ () рд╡рд┐рдзрд┐ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмрдЪ рдЕрдкрдирд╛ рд╡реНрдпреВрдкреЛрд░реНрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред

рдиреЛрдЯред рдЬреИрд╕реЗ рд╣реА рджреЗрдЦрдиреЗ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдкреНрд░рд▓реЗрдЦрди рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕реЗ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ред


рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдореЗрдВ рдПрдХ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рд╕реНрдкреНрд░рд┐рдЯ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЬреАрдкреАрдпреВ рдореЗрдВ рднреЗрдЬрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЬрдорд╛ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рдпрд╣ рд╕рдВрдЦреНрдпрд╛ рдмрд╣реБрдд рдХрдо рд╣реИ, рддреЛ рддреНрд╡рд░рдХ рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрд▓ рд╣реЛрдВрдЧреЗред рдпрджрд┐ рд╕рдВрдЦреНрдпрд╛ рдмрдбрд╝реА рд╣реИ, рддреЛ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред

SpriteBatch рдХрд╛ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреНрд╖реЗрддреНрд░ рд╣реИ, рдЬрд┐рд╕реЗ maxSpritesInBatch рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реНрдкреНрд░рд╛рдЗрдЯ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╕реНрдкреНрд░рд┐рдЯрдмреИрдЪ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреЗ рджреМрд░рд╛рди рдПрдХ рдмрд╛рд░ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рддреНрд╡рд░рдХ рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдмрд╣реБрдд рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЖрдкрдХреЛ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЖрдХрд╛рд░ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдХрд╛ рдЖрдХрд╛рд░ (рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдирдВрдмрд░) рдХрд╛ рдЖрдХрд╛рд░ рдЕрдзрд┐рдХрддрдо рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдмреИрдЪред рдЖрдк рд╣рдореЗрд╢рд╛ maxSpritesInBatch рдХреЛ рд╢реВрдиреНрдп рдкрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдЕрд░реНрдерд╛рдд, рдЗрд╕ рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░реЗрдВред

SpriteBatch рдореЗрдВ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реЗрдВрдбрд░рдХреЙрд▓ рдлрд╝реАрд▓реНрдб рд╣реИред рдЕрдЧрд▓реЗ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдЪрдХреНрд░ рдХреЗ рдмрд╛рдж, рдпрд╣ рд╕реНрдЯреЛрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдиреЗ рдХрд┐рддрдиреА рдмрд╛рд░ рдХреЙрд▓ рд╢реБрд░реВ рдХрд░рдиреЗ () рдФрд░ рдЕрдВрдд () рдХреЗ рдмреАрдЪ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЬреНрдпрд╛рдорд┐рддрд┐ рдХреА рдЬрд╛рдирдХрд╛рд░реА рднреЗрдЬреАред рдРрд╕рд╛ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмрдирд╛рд╡рдЯреЛрдВ рдХреЛ рдХрд╛рдЯ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рдпрджрд┐ рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рднрд░рд╛ рд╣реБрдЖ рдерд╛ (рдХреИрд╢ рдмрд╣реБрдд рдЫреЛрдЯрд╛ рд╣реИ)ред рдпрджрд┐ SpriteBatch рдХрд╛ рдЖрдХрд╛рд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд░реЗрдВрдбрд░рдХреЙрд▓ рдмрд╣реБрдд рдмрдбрд╝рд╛ (рд▓рдЧрднрдЧ 15-20) рд╣реИ, рддреЛ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмрдирд╛рд╡рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдПрдХ рдмрдбрд╝реА рдмрдирд╛рд╡рдЯ рдореЗрдВ рдмрдирд╛рд╡рдЯ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред

рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╣реИ рдЬреЛ рдмрдлрд╝рд░реНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЖрдХрд╛рд░ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдЙрдиреНрдирдд рд╕реБрд╡рд┐рдзрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рд╕рд╛рдорд╛рдиреНрдп VA (рд╡рд░реНрдЯреЗрдХреНрд╕ рдПрд░реЗ) рдХреЗ рдмрдЬрд╛рдп рд╡реАрдмреАрдУ (рд╡рд░реНрдЯреЗрдХреНрд╕ рдмрдлрд░ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддреА рд╣реИред рд╕реНрдкреНрд░рд╛рдЗрдЯрдмреИрдЪ рдмрдлрд╝рд░реНрд╕ рдХреА рдПрдХ рд╕реВрдЪреА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдирд┐рдореНрди рдмрдлрд░ рдХрд╛ рд╣рд░ рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЬрдм maxSpritesInBatch рдЫреЛрдЯрд╛ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рд░реЗрдВрдбрд░рдХреЙрд▓ рдмрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЫреЛрдЯреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗ рд╕рдХрддреА рд╣реИред

Source: https://habr.com/ru/post/In143405/


All Articles