简体   繁体   中英

how to draw custom shapes using a simple texture in libgdx?

I want to draw custom static shapes in my game just like the angry birds done: 愤怒的小鸟

but the problem is that the texture is in square shape.

静态地面

how we can tell to the "SpriteBatch" to draw shapes with some vertices? does anybody has some ideas?

According to the docs :

A SpriteBatch is used to draw 2D rectangles that reference a texture (region)

So essentially, this method does not allow you to specify any other geometry than a rectangle. However, there is a draw method that allows you to specify the four coordinates of the "rectangle" and turn it into something else. You'd've to decompose the geometry into smaller pieces that fits this primitives . Looks like this method doesn't lend itself to geometry changes.

Better you create a mesh and just draw it. The mesh does not support triangulation, so use the ObjLoader.loadObj* methods to load a mesh in Alias Wavefront OBJ format. Specifying the geometry shouldn't be a hassle; the article links to some example files.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM