
While round dining tables take up less space as a whole, they don’t fit against walls as easily as rectangle shapes. Quick tip: When choosing table size for your room, remember to factor in space for chairs! If you’re space conscious, it can be a better choice to go for a circular table that won’t make your room feel crowded or your guests feel claustrophobic! They have a smaller surface area than their rectangular counterparts so will fit into tighter spaces much more easily. If you have a small house or dining room, bear in mind that round tables take up less space. Therefore this has to impact your choice of table. Different shapes suit different sized spaces. The first thing to consider when choosing a round or rectangle dining table is the space you have available. Round and rectangle tables have different advantages, so read on to make sure you pick the best one for you! Picking the right shape for your space ensures that your new table looks fantastic in your room and works for your needs.

When you’re choosing a new dining table, you will have to choose between round and rectangular. I chose it over the two overlapping rectangles approach because it works well with transparency.Round Or Rectangular Dining Table: What Shape's Best? In case it's useful for anyone, here's my extension of LibGDX's ShapeRenderer to draw rectangles with rounded corners, using Josh Petrie's approach of drawing five rectangles and four arches. This is likely the most efficient, since a ninepatch uses much less geometry then a mesh would to represent the same thing, unless you have some other needs that make ninepatches unusable. This may be more efficient than ShapeRenderer if you put the time and effort into it, but it's also going to be more work on your part.Ī related option would be to continue to use a ninepatch, but to generate the textures you use for the rounded corners with ShapeRenderer once, using very high-resolution calls to arc to ensure you have sufficient visual fidelity for your needs (you'll need to tweak the input, but that would be easy). You should then cache this Mesh object (or several of them, one for each "resolution" of arc representation) and re-use it for every rectangle you want to draw. You'll have to produce actual triangles to do so, so you'll want to approximate the arcs using triangles organized like a triangle fan (you may not want to use actual triangle fans, since they are poorly-supported and also because you can't represent the rest of the rounded rectangle with them, so you'd end up with many draw calls per rectangle rather than a single draw call if you were generate the geometry as a single indexed triangle list). If you really want to avoid ShapeRenderer, you can build the geometry yourself and store it into a Mesh for rendering. I would strongly encourage you to build your rectangle this way and only worry about more complicated solutions if you actually see performance issues.


You should probably use ShapeRenderer for this, as its rect and arc methods provide exactly what you need (five filled rectangles - or two that overdraw - and four filled arcs produce a rounded rectangle).

You can procedurally generate a rounded rectangle.
