Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 594603
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T15:58:17+00:00 2026-05-13T15:58:17+00:00

Should entities know how to draw themselves? I’ve used this approach: it’s simple and

  • 0

Should entities know how to draw themselves? I’ve used this approach: it’s simple and it works, but after learning MVC-patterns I feel uneasy about this. It’s hard to change the art style when all the display logic is buried in the model.

One could introduce a view class, which takes the level as an argument and draws it, but this would mean it has to identify entity types and introduce a “switch”-statement, which I learned is also bad.

Where should one place code for drawing, in a way that is extensible, easy to change, clean and dry?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T15:58:18+00:00Added an answer on May 13, 2026 at 3:58 pm

    Theres nothing inherently wrong with having an abstract Draw() style method in your entities that lets them decide how they will be drawn, especially for smaller games that probably won’t be extended significantly. I’ve used this method in a ton of small projects and it works great.

    An improvement you can make to that strategy is to use your game resources as a proxy for the actual drawing operations. For example an enemy entity can defer all the rendering through a resource object it owns that represents the mesh; likewise for the texture/skin and effects.

    I’ve recently switched to using my entities as ‘dumb’ containers for interfaces that define their behaviours. A player entity might contain IMoveable, IControllable, IRenderable, and many more interfaces that simply apply a specialized operation to that entity depending on the data it contains. The entity doesn’t know much about this and all the execution happens when the scene graph is traversed for culling/rendering.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I've this simple Entities from DB tables But i want my POCO classes to
I don't know if I should test my @Entity-annotated Pojos. After all, there are
I'm having trouble with something that (I think) should be simple, but can't find
I know that when overriding hashcode() and equals() of my persistent entities I should
I'm trying to do something that should be real simple but I'm getting errors
Should entities have behavior? or not? Why or why not? If not, does that
Should Domain Entities be exposed as Interfaces or as Plain Objects ? The User
We have bunch of Domain Entities which should be rendered to an html format,
For domain entities, should property names be prefaced with the entity name? I.E. my
In DDD you should never let your entities enter an invalid state. That being

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.