• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by khos85 · Aug 15, 2014 at 09:33 AM · 2dterrain3dperformancedetail

2d fake 3d objects cheaper in terms of drawcalls/ performance?

Hi,

I have a 3d flight sim game, I am looking at making it more efficient, I have many trees and bushes on the terrains, it makes performance bad..

I am looking at creating 2d fake 3d objects , to make performance faster in terms of drawcalls/ performance, will it actually help? If I have 1000's of 3d bushes, if they are instead 2d images on a plane it would be much better right?

What is the best approach to this? Any advise would be much appreciated.

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by Michael CMS · Aug 15, 2014 at 10:13 AM

Replacing 3D objects with 2D is done via sprites / billboards. Basically you will have a quad with a texture on it that will always face the position of your player.

Yes, your approach will improve performance, but not in terms of draw calls . You are optimizing the amount of geometry you are sending to the GPU , but your overdraw will increase (since all the sprites will be rendered with transparency ). Your draw calls should remain constant, since you are drawing all bushes in one pass regardless if they're 3D or 2D (you don't change shaders for different bushes/trees, do you ? :) ).

If you are bottlenecking at geometry , then the approach you mentioned will improve performance. However I'd suggest using a LOD approach first to see if that doesn't help you out (basically change the amount of polygons of the bushes according to the distance to the player : the bigger the distance the lower the amounts of polygons needed for the model).

Regarding the sprites / billboards : This practice makes sense for some 3D games , where the player is limited in his movement to a certain height. Considering you will fly over those trees, as well as being on-level with them, this will get more complicated.

You will probably need to change the rendered texture on the quad according to the angle of your plane with respect to the normal of the surface the object is placed on .

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image khos85 · Aug 15, 2014 at 02:18 PM 0
Share

Or I guess using LOD and Occlusion culling would help a lot, I am not using that at the moment... any recommendations for a good free or cheap plugin that can handle this in Unity Free?

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

22 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

To what extent can the tree system be used instead of the details system 0 Answers

2d or 3d for better perform on mobile devices? 1 Answer

2.5D or 3D. A Matter of Performance? 0 Answers

How to improve the Performance of Removing Trees during runtime? 1 Answer

2D object Image Look at 3D object Pointing 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges