Java-Gaming.org
Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
Featured games (78)
games approved by the League of Dukes
Games in Showcase (406)
games submitted by our members
Games in WIP (292)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  How do I get a sharedcopy of a TDSModel?  (Read 491 times)
0 Members and 1 Guest are viewing this topic.
Offline itistoday

Junior Member




There's too much blood in my caffeine system.


« Posted 2004-11-07 23:17:34 »

I'm storing several models that will be used frequently in a HashMap.  From this, I need to be able to get a sharedcopy TDSModel so that all the new models will be able to use use TDSModel's animation feature.  So far, I can't seem to figure out a way to do this, and frequently am running into class casting problems.

Offline LaLiLuLeLo

Senior Newbie




Foooocus!


« Reply #1 - Posted 2004-11-08 17:54:53 »

This is bits and pieces of what I use, hope you can understand it...

(Snippet from Class modelCache) ---
   private HashMap models;

   /**
    * Load a 3DS File
    * @param modelName
    * @return
    */
   public TDSModel loadTDSModel(String modelName) {
       if (models.get(modelName) == null) {
           try {
               TDSModel model = new TDSLoader().load(modelName,true);
               models.put(modelName, model);
           }
           catch (Exception e) {
               e.printStackTrace();
                       System.out.println("3DS Model " + modelName + " could not be loaded! Exiting!");
                       System.exit(0);
                       return null;
           }            
       }
       
       return (TDSModel) models.get(modelName);        
   }


(Snippet from Actor class) ----
   private Shape3D s;
   private Appearance a;
   private BranchGroup model;

   public void init(String modelName) {
       if (modelName.endsWith("obj")) {
          model = world.getModelCache().loadOBJModel(modelName);
       } else if (modelName.endsWith("3ds")) {
           model = world.getModelCache().loadTDSModel(modelName);
           //s = (Shape3D) ((TransformGroup) model.getChild(0)).getChild(0);
           //a = s.getAppearance();
       }

       tgRot.addChild(model.sharedCopy());
       group.addChild(tgRot);        
       //group.setShowBounds(true, true);
       world.addTransformGroup(group);
       world.addActor(this);
   }

========

TDSModel extends BranchGroup. So you can do shared copy on the BranchGroup and add it to other transform groups. etc etc.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
 
Browse for soundtracks for your game!

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

The invasion has landed! On Mars! And you're there to beat 'em!
cubemaster21 (67 views)
2013-05-17 21:29:12

alaslipknot (76 views)
2013-05-16 21:24:48

gouessej (109 views)
2013-05-16 00:53:38

gouessej (104 views)
2013-05-16 00:17:58

theagentd (115 views)
2013-05-15 15:01:13

theagentd (104 views)
2013-05-15 15:00:54

StreetDoggy (149 views)
2013-05-14 15:56:26

kutucuk (172 views)
2013-05-12 17:10:36

kutucuk (170 views)
2013-05-12 15:36:09

UnluckyDevil (179 views)
2013-05-12 05:09:57
Complex number cookbook
by Roquen
2013-04-24 12:47:31

2D Dynamic Lighting
by Oskuro
2013-04-17 16:46:12

2D Dynamic Lighting
by Oskuro
2013-04-17 16:45:57

2D Dynamic Lighting
by Oskuro
2013-04-17 16:23:20

Noise (bandpassed white)
by Roquen
2013-04-05 17:36:01

Noise (bandpassed white)
by Roquen
2013-04-03 16:17:38

Java Data structures
by Roquen
2013-03-29 13:21:12

Topic Request
by kutucuk
2013-03-22 21:42:01
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!
Page created in 0.119 seconds with 21 queries.