There are a number of ways a resource or element can be invalid, and certain invalidities will trash the tree. For example, in rare cases, dragging a resource in the tree can end up with the resource being its own parent or two resources being parents of each other. This causes an infinite loop in the code that draws the tree, so the tree is never rendered.
If the excellent suggestions above don't work, you can check the parent and id fields in the ID.
SiteCheck will check them for you, but you can also do it yourself manually in the DB. It may not solve your problem, but it will rule out one possible cause.