[EDIT] _3DPrint v1.2 - Print 3d-models saved as *.3ds [BukkitDev]

Discussion in 'Archived: Plugin Releases' started by fredlllll, Apr 9, 2012.

  1. New version on dev.bukkit http://dev.bukkit.org/server-mods/print3d/

    _3DPrint Plugin - Print your own 3dmodels:
    Version: v1.2

    (the _ before the 3 is due to programming languages not accepting numbers for first character in classnames)
    it is usable for players and for console​
    use it as follows:​
    /3dprint filename.3ds texturename.[jpg/png/bmp] x y z <worldname>
    • Filename:
      this is the filepath to your .3ds file. relative to the bukkit folder
    • Texturename:
      filepath of the texture to use. also relative to the bukkit folder. i just tested it with jpg files, but you can use everything what a java.awt.image.BufferedImage can read.
    • x y and z:
      these are the coordinates where your origin of the 3d object should be positioned.
      Example: in your 3deditor the origin is 0,0,0 and your object is at (somewhere)10,75,100 and you give 100,10,100 as xy and z then the 0,0,0 of the editor will be at 100,10,100 and the object will be at 110,85,200
    • Worldname:
      optionally you can specify the world the object should be drawn in
    Undoes the last printed 3dobject.​
    /3dslowmode <use slowmode 0/1> [slowinterval]
    turns slowmode on or off. You can optionally set the interval the drawerthread waits between each face. this is 50 millis by default​

    • Prints out .3ds files
    • and Undoes the last printed one if it destroyed half of your server or whatev :p
    Download: https://sourceforge.net/projects/dddprintbukkit/files/
    SourceCode is also there

    some examples! WATCH!!! (open)

    Delorean with textures[​IMG]

    Version 1.2:
    • Added slowmode for slower servers. so you can draw your model slower
    Version 1.1:
    • Added the Undo Command
    • Fixed the flipped V-Coordinates
    Version 1.0
    • Releasing my awesome plugin(yeah this is the template text and i will keep it :p)
    devilquak and kroltan like this.
  2. if it works, awesome! Will test later
  3. it's the first version and worked for me, but im sure there are a big number of bugs in it. have fun testing.
  4. Offline


    Approved, don't see many users of sourceforge.
  5. i dont know where to host otherwise. and i already had a sourceforge account. oh and i can use git with eclipse.
    and im really waiting for more feedback for this plugin :p
  6. Offline


    how big are the created models?
    maybe you could add a function to set the quality of the created model.
    i'll test the plugin today... i cant believe that you were able to program something like this.. awesome
  7. uhh you dont save the minecraft world as .3ds. you use a 3ds made in a 3d program and print this as blocks into your world
  8. Offline


    yeah of course ;) i mean how big the models are in the minecraft world...
    when i print a simple model, i think its not as big as a very extravagant model like e.g. a big airplane...
    sry for my bad english >.< ... dont know how to explain that...
    if u got a model like a human, you need much more blocks to print it in a good quality... if it's a pencil, i think there are not so
    many blocks needed to print it an acceptable way...
  9. well the coordinates are transfered 1:1 , so if your vertex in the editor is at 10,10,10 then the vertex will be at the block 10,10,10 relative to the given position. so be sure to resize the model in the editor until it fits. oh and keep in mind that the y axis is up in minecraft. so after making your models rotate it ,so that y is up. and your model should be maximum 255 high (or the maxheight specified in server.properties i think) if you position it at the bottom of the map. it just uses wools by now, cause i didnt want to determine the average color of each block in minecraft, so the colors may sometimes not fit so good. and i think there is still a problem with the texture coordinates being shifted by one block
  10. Offline


    Great concept :D

    Only problem is, it doesn't work... No matter how I lay out the command syntax, it just repeats back to me how to use the command.



    Any idea what might be wrong with it?
    I've tried moving the files around to different locations in the folder and adjusting accordingly, but to no avail.
  11. you see any commas in the description how to use it? ;3 i dont see any between the coordinates. and dont use the worldname. its just in case if you use it directly from the server console. cause the worldname results in a longer args[] it returns a false. so you have to be in the world where you want to execute it
  12. Offline


    Loving it. Finally did get it to work, then when I did, the model I had imported was flipped all weird...
    I've been modeling for quite a few years, ehm... How are the axes oriented exactly? I know Y seems to be all weirded out in minecraft, as opposed to other programs/games...

    Just for kicks, i'll have to show you the hilarious situation I got myself into when the model wasn't oriented correctly:

    http://d.pr/Tdfu - Luckily it missed the spawn. Tore up some of the mountains though. LOL

    And when I got it all oriented and set, this was the result:

    Bonus points if you recognize that ship. :D

    It does seem, that if you import a model that is larger than a certain size, the blocks do not fill, in certain places. I originally imported this model... It was about... 300 units long, and maybe 140 wide. It was showing holes along the "hull." Nothing to worry about, of course... Just letting you know about it :)

    Long story short though, thank you for making such an amazing plugin!

    [EDIT]: Also, quick suggestion... Might be handy to add an undo function sometime in the future... So stuff like what happened in that image, can be... erm... avoided. xDDD
  13. you drew that while being ingame? wow. my computer starts lagging when i use the command. maybe cause i run server and client on it :p. newest version now has a thread for drawing the model

    yeah the y axis is up in minecraft. but this gets more common. the fbx exporter also has a "switch y and z axis" checkbox.
    well i dont recognize it :p but it looks like something from battlestart galactica XD i dunno
    but it looks nice. a pitty you didnt use a texture on it ;3

    the holes in the hull are some unwanted result of the drawing technique. when drawing a polygon i use the Bresenham algorithm to draw lines(get blocks between vertex 1 and two. then draw lines from vertex 3 to these blocks). but the algorithm does diagonal steps. so if the polygon is far away from being a normal triangle, the holes are just blocks which are not reached by drawing the lines. i know this is annoying, and the classic version had this issue too. i could make a sensor, if there is a diagonal step i fill out a block there. but well... im lazy :p

    yeah i could make a undo. i hope this doesnt take up to much memory. java is a champion in wasting ram -.-
  14. Offline


    Hmm, i seem to have found another problem... I tried to import a model with a texture this time, but...
    It didn't map properly... @[email protected]

    http://d.pr/4tvi <---- back to the future Delorean. haha. Even though I've never seen the movie. >_>

    It's showing as properly mapped in my editor though... that's the odd thing.

    http://d.pr/WthL <---- Yeah, I still use zModeler. Good old MM2 days :D
    Though the new version doesn't support mm2 pkg files.. so I had to switch to v1.

    Anyways, not sure what's going on with that.. Quite odd...
    And yeah, java is a resource hog, at best. :p
  15. well.... maybe i apply the texture coordinates wrong (V flipped). ill take a look at that

    as i thought i flipped the v coordinates. fixed that and added a undo cmd

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 25, 2016
  16. Offline


    This is awesome! I just tested it, and it seemed to work. I think the .3ds was to big, though, because it crashed the server...

    Anyway, would it be possible to add a selection of materials? Like, say I wanted to make a mountain landscape. It could be /3dprint <filename> <texture> <coordinates> <material> <world> or something?
  17. you can use just the texture and then replace all green wool by grass or something. or you want to give me the average color of each block in the game ;3 this is some annoying work. then i could add these blocks to the texture class. and you can make your texture to use certain blocks
  18. Offline


    this is fucking awesome, now i can build a set in minecraft, and animate shit in it in 3ds max!
  19. Offline


    Mh, I think you got it backwards. The plugin will import .3ds files in-game, not export a selection to .3ds files.
  20. Offline


  21. new version 1.2: added a command /3d slowmode. allows users to slow down drawing process, which would make client and server lag otherwise due to huge amounts of blocks drawn
  22. Offline



    I'll have more photos up in a while, been feeling a bit sick the past couple of days.
    Here's a few of the Delorean on my server, that you saw yesterday :p



    Fury, player ship:

    Fury, "Sleek Fighter":


    The biggest thing created as of yet! Many old Midtown Madness 2 goers should remember this well.
    Komatsu 930E Haul Truck:
    http://d.pr/i/b1IX - Rear
    http://d.pr/i/viTk - Side
    http://d.pr/i/FZg - Front

    Extremely large model. over 300 blocks long, and over 150 blocks tall.

    I wonder how many times you can edit a post... if you want, I could post all the images here, and you can reference back to it... Sound good?
  23. Offline


    No matter what I do, my models are printing with the garbled-looking multicolor blue, grey, and green blocks even though the model is using a solid dark grey texture.

    It's too bad I couldn't just specify via parameter to print the whole model in plain cobblestone or something.

    Also, the specified texture doesn't seem to have any effect on how the model turns out. Can you give any information about the texture option and why it's required?

    Otherwise, this is an incredibly awesome plugin!
  24. well your model should have texture coordinates. and the texture format i used (and which ran on other servers as you see in the screenshots provided by l24d) was png. size of the texture doesnt matter. best you test it out with just a plain quad and show me the results if you think that the texture is still wrong
  25. Offline


    I just want to bring in some geometry though. So you're saying I'd have to uv and texture it first? Having it analyze textures and try to recreate them using differently colored wool blocks is great, and will be very useful for certain models. But some models I'd like to bring in and be able specify an item ID or something to use. As for the model I was hoping to use, it'll be way too much to fix the uv's and try to combine all 24 individual textures into one file so I'll just scrap it and stick to something more simple.
  26. well ill see if i can add something so it just uses one type of block...
  27. Offline


    hey hey fredlllll
    Just checking up on ya... Things still scooting along well? Haven't had much time to print more models for you lately... Got the new server built, and I'm currently doing some hardcore tweaking on it...

    Hope development is going well! :D
  28. well i dont have much time =/
  29. Offline


    Do you remember exactly what you did to fix the problem?

    I keep getting either the 3dprint command syntax spit back at me, or I get a "Couldnt Parse Coordinates:" error.

    Is there a specific placement of files I should be using? Any help would be greatly appreciated from anyone who was successful in using this plugin.

  30. /3dprint filename.3ds texturename.[jpg/png/bmp] x y z
    x y and z are integers. so a valid command would be
    /3dprint 3dmodel.3ds texture.png 12 128 76

Share This Page