7 ms·
Show HN: 3DC.io – A dead simple cross-platform 3D design tool
- eerikkivistik 9y agoDeveloper here, would love to get some feedback and answer any questions you might have. The app is available on iOS, Android and Web (https://3dc.io/download https://3dc.io/download). There is also a gallery of user built content (https://3dc.io/gallery https://3dc.io/gallery).
- grenoire 9y ago- Camera rotation is way too slow for my tastes. - Tools should have keyboard shortcuts. - It's rather ambiguous, say, what the subtract tool subtracts from. - Scaling tool must include a Ctrl or Shift modifier key to scale all axes. - Tools must bring up a precise control box as, say, Blender does. - Information about object positions, scales, and tri-count would be great to have. - Not sure if I missed it, but there ought to be a vertex-level editing tool. All in all, it seems like a basic toy rather than something that allows you to have a great deal of freedom. Can be improved upon if the toolset is extended and allows for a higher degree of control.
- eerikkivistik 9y agoHi, our desktop features including hotkeys etc. have been lagging behind, since we started as a mobile-first tool, but they are on the roadmap. You are correct in the conclusion that it is more like a basic toy, we try to keep things as simple and minimal as possible to attract people with no 3d design background. However, we plan to add features to support more experienced people on our platform.
- dfbrown 9y agoYour rotation widget is nonstandard compared to most other 3D editors. See for example Blender[1] or Maya's[2] widgets (which are both basically the same). It's also kind of confusing as it seems like pulling one axis' rotation manipulator actually rotates about a different axis. So pulling on X rotates about Z, Y about X, and Z about Y. [1] https://wiki.blender.org/index.php/User:Simtron/Doc:2.6/Manual/3D_interaction/Transformations/Basics/Rotation#Rotation_Widget https://wiki.blender.org/index.php/User:Simtron/Doc:2.6/Manu... [2] https://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2016/ENU/Maya/files/GUID-169906C5-CBC4-45CD-8DFB-F716D51D6168-htm.html https://knowledge.autodesk.com/support/maya/learn-explore/ca...
- eerikkivistik 9y agoAgreed, the controls need a rework. They are the legacy of the prototype version we built a while back.
- zardo 9y agoI think pulling the pins is fine, but the shape should rotate around the pin's axis. I would suggest associating pulling it out with a clockwise rotation.
- ungzd 9y agoWhat are use cases for this tool? It's too simplistic. No shapes other than (combined) primitives, no textures.
- eerikkivistik 9y agoA lot of people build and sketch prototypes. There is basic constructive solid geometry via the subtract tool for some more complex stuff. As for textures, we will be adding them in the next update.
- jaakk 9y agoOne of the most interesting use cases so far has been in education, where the low learning curve provides a frictionless experience in studying design as well as materialising one's ideas. Thus, lowering the barrier of entry for younger creators. (Another developer here)
- jaakk 9y ago3DC enables anyone to start creating in just a few minutes. No previous professional 3D experience needed. It's designed like LEGO for the digital world. By combining the primitives, one can start fast and gradually come up with ever more complex designs.
- panic 9y agoThanks for making this and sharing it on HN; I like the simplicity of it! The way that selection works really confused me, though. Here's what happened: I made two objects. I clicked on one, which clearly indicated it as selected. I tried to deselect that object by clicking on the grid outside it, but nothing happened. OK, fine, let's try a different strategy -- selecting the second object (thereby deselecting the first) by clicking on it. After clicking the second object, it went back to looking like neither was selected. Huh? So I clicked again on the first object to select it... and the second object got selected?! Then I realized that both objects had been selected! I found this behavior so odd that I came here to write this feedback. FWIW, here's how I think it should work: clicking an item should deselect all the other items unless you're holding the shift key. Selected items should be clearly marked -- don't just dim the deselected items: this keeps the "all selected" and "none selected" states from looking so similar.
- eerikkivistik 9y agoHi! You make a good point, that the current behavior might not make sense on desktop. We started out on Android and iOS and there "tapping" on objects makes a whole lot more sense. We should probably revisit the entire controls logic in the future. In the meantime, try it out on mobile, might feel more fluid.
- panic 9y agoI'm seeing the same behavior on mobile (surprised it worked so well on my ancient phone!). Make two items, tap the first item, then tap the second one. It still looks confusingly like nothing is selected.
- eerikkivistik 9y agoYeah, the behavior is the same, I meant it feels more natural on the phone :) I'll add it to our backlog, to take a look at it and maybe rethink the selection logic.
- xenonite 9y ago
- copperheart 9y agoThe iOS app is a pleasure to use. I would love the ability to input numerical values via keyboard for things like dimensions, positions, rotations, etc. Another user mentioned the non– standard rotation widgets, however I actually enjoy the rotation tool in its current form. I would also like to express my appreciation for the ability to save/import/export files instead of locking those functions behind in-app purchases. Overall, great job! Thank you for creating this.
- eerikkivistik 9y agoThank you. Numerical input is on its way, probably a month or so.
- eerikkivistik 9y agoI'll add some information about the development stack as well. First and foremost Three.js, that made getting a prototype up and running in a weekend viable. For mobile, we use Cordova and package the app up for various platforms. On top of Cordova we run a lot of custom code to smooth out the filesystem and streaming of data to and from the engine that relies heavily on Three.js internally. We also built a custom IOC container to manage the ever increasing amount of components and integrations.
- achikin 9y agoI would love to have some info on particular object size and ability to set sizes/rotations precisely, so I can do some simple modeling for 3d printing.
- eerikkivistik 9y agoCheck back in a month or so, going to release 2 large updates.
- jaakk 9y agoYes, it's in the pipeline and will be added quite soon.
- iguana 9y agoFirst, thank you! I use the ipad version. Some needed features: - precise editing - manual entry of dimensions - different materials and transparency - library of common items such as batteries, usb ports, etc - sub-mm scale - pencil support for ipad pro
- eerikkivistik 9y ago- precise editing (planned) - manual entry of dimensions (planned) - different materials and transparency (planned) - library of common items (had multiple extremely long arguments about this, still no consensus on this) - batteries, usb ports, etc (?) - sub-mm scale (for 3D printing?) - pencil support for ipad pro (not currently planned, if there is demand we could add it)
- iguana 9y agoThank you for replying! The sub-mm scale would be to accurately model small things. When making a case for a raspi0, for example.
- eerikkivistik 9y agoMakes sense, we will consider adding a few decimal points.
- devwastaken 9y agoOverall, it seems pretty interesting. But, models should be in some sort of layers-like menu, like what blender has, that way you can easily select overlapping or embedded models.
- it_learnses 9y agoI don't use facebook. Mind offering other options to sign up or log in?
- eerikkivistik 9y agoYes, we are adding more login options in the next update. But in the meantime, you can simply skip the login, it is not required. Fun fact, I don't use Facebook either, so I don't have an account myself.
- sturmen 9y agoThe web app works great in Chrome for Android, which is awesome. I downloaded the native Android app, too; it looks like it targets an API less than 23. It's not a huge deal but it'd be cool if that got updated ️
- eerikkivistik 9y agoWe have wanted to upgrade to 23 ourselves for the new permissions API, but a lot of our users are still on Android 4.*, so we decided to keep compatibility for now. Although it is a pain in the ass if we need a new permission for say a texture feature, since half our user base gets left behind on an old version by not auto-upgrading.
- Nullabillity 9y agoYou can target a target a newer API version than your minimum version, and branch your behaviour at runtime.
- eerikkivistik 9y agoTrue.
- canada_dry 9y agoGreat work so far! Lots of work to go if you're going to differentiate yourself from the leader (i.e. Tinkercad). Add tools that allow manipulation of edges and faces and you'll achieve that.
- agentoso 9y agoOne feature I didn't see would be a way to specify a desired size. To be to type 50mm to get an object at that length would be helpful. Similar to when using the ruler in Tinkercad.
- bastijn 9y agoI can see myself using this for simple communication on 3D geometry work to my colleagues (I work a lot with 3D rendering). Hand drawing is so hard sometimes :). However, for that it would need at least a transparency option so I can layer boxes and all. Otherwise, it feels really smooth in my browser. Good job there. I can see more shortcuts in the future but as I have very basic needs these are not a showstopper for me.
- eerikkivistik 9y agoA lot of people have been asking for transparency lately. We can add it, but would need to rework how object selection/deselection looks visually. Thank you for the feedback.
- Ono-Sendai 9y agoWhat you probably want to do is draw an outline around your object when selected.
- mrdoob2 9y ago+1
- eerikkivistik 9y agoWe played around with it a while back, but didn't quite get it right (visually), will give it another shot.
- Ono-Sendai 9y agoIt's a bit tricky to get right, try a Sobel filter.
- bhouston 9y agoLet me know if you want to do an integration with our https://Clara.io https://Clara.io 3D presentation and modeling tool! Would be nice to have some data transfer back and forth.
- eerikkivistik 9y agoWe should have a chat yeah, just saw a three.js pull request by you, that I want to discuss :) (Image and Texture related, single image -> multiple textures. Long story short, we are building the exact same thing :) )
- grizzles 9y ago3D tools can often be overwhelming, especially if you only use them occasionally. The push/pull feature reminds me a bit of SketchUp, which I really like. Anyone have any thoughts on what I could use for building up a scene? Ideally something where I can move things around the world with scripting.
- bhouston 9y agoHow did you get the push pull aspect of things? I couldn't get that to work.
- eerikkivistik 9y agoCan you specify a bit? Do you mean translate/scale/rotate specifically or how we track the arrow movement?
- grizzles 9y agoPress the <-> arrows on the bottom right.
- eerikkivistik 9y agoThe threejs.org/editor has some functionality for this. We will be adding Three.js export support soon as well, so hey, maybe combine the two.
- amelius 9y agoWhat is the best 3D design tool for Linux?
- bhouston 9y agoBlender
- macawfish 9y agoAs much as I love Blender, I don't think Blender is very good for "design". It lacks parametric solid modeling primitives and operators. I've tried many times to do architectural modeling in Blender. It's good for sketching and rendering stuff like that, but not so much for "design". It's just not streamlined and is missing too much fundamental stuff. Some day, I'd love to see Blender improve in that regard! Someone recently made an addon called "archimesh". There's also "sverchok", a parametric modeling plugin. I suppose that could be used for design. And of course, if you're writing your own python scripts, the sky's the limit. I think with a couple basic improvements, Blender could crush as a design tool: 1) Comprehensive solid modeling tools, including quality measuring tools for volumes, surface areas and lengths. 2) Some kind of plugin or extension to allow for composable, parametric "widget" type object groups. So you'd have a parametric wall section composed of parametric material pieces. The window unit would be a parametric composition of parametric subcomponents, like layers of glass, a tweakable frame, etc. A window widget would know to boolean cut through a wall. Archimesh does this kind of thing, but it's buggy and still in beta, and not so general purpose. Maybe Sverchok and some python would do it. Along with Blender's excellent constraint and modifier system, these would go a long way. Edit: I Just remembered that there was (and maybe still is) a long term push for "node based everything". I think this might fulfill #2.
- zokier 9y agoFor a more of a cad thing, solvespace is my favorite. It is pretty simple as far as cads go, but still capable enough.
- kardianos 9y ago
- Ono-Sendai 9y agoGood stuff btw. I don't think most people appreciate the amount of work that goes into making something simple to use like this.
- eerikkivistik 9y agoThank you. And yes, the details take up 10x more time than the features.
- cdevs 9y agoI've been a blender hobbyist for about a year now and it's a bit creepy how smooth this is on my iPhone at the moment. Thanks for sharing I hope I remember to dig more into this tomorrow.
- eerikkivistik 9y agoThank you! A lot of that is on Apple as well, Safari with all its bugs is really fast on mobile.
- Animats 9y agoFull CSG. Very nice. Clipping a cube with a sphere works.
- eerikkivistik 9y agoOh boy. Getting that to work fast enough on mobile devices warrants an article of its own.
- drHogan 9y agoOhoh this looks very very nice! Keep it up guys, nice job!
- _fizz_buzz_ 9y agoLove it! Would be nice to get the option to log-in without a facebook account. I don't have facebook, so I used it without logging in. Not sure which features I was missing.
- eerikkivistik 9y agoAdding google login in the next release. Basically you are missing out on a public profile/portfolio and the option to comment.
- rutierut 9y agoThis works sooo well on mobile, loving this!!!
- eerikkivistik 9y agoThank you! What platform are you on and are you using the browser version or the native app?
- skankhunt43 9y agoThis is a really great app if you want to troll someone. Been using it on the great Danish Troll Hunt servers to make big things happen. ~~~~~~~~D()()=(solve the puzzle to make a rocket ship)
- strider12 9y agoi like it. i like that it's offline (or atleast when my firewall blocks it, it still works)!! and i like that you dont need an account to use it. Mobile version is basic and exporting to obj is the freedom i'm looking for. I see myself using this for when i'm really mobile and i need to prototype a basic idea then use another program to take it to the next level. Keep improving it, there is lots to do but focusing on enhancing modularity should be your core focus as you already know -- and an obvious idea is selling batches of models (not singles like 50s or 100s) so folks can plug and play and maybe try to create a unique rendering style so your program has a signature.
- mayrun 9y agoKeeps on showing the spinning art for me, for couple of minutes.
- eerikkivistik 9y agoIt's possible that WebGL isn't supported on your device and our error detection fails to give you a message. Looking into it.
- gcb0 9y agothere's been a mobile openSCAD app for ages.
- cr0sh 9y agoAre you talking about Scorch CAD or something else? If the former, then yeah - it's been around for a while, but the one thing I wish the developer would fix is the ability to switch between perspective projection and iso projection; right now, iso is all there is. Which is great when you want to check measurements without distortion, but sometimes you just want a regular 3D view. Unless you know of another app?
- JTxt 9y agoImpressive! I think a "Lathe" tool could be made from your "Draw" shape tool fairly easily. Interesting problems you have... Balancing flexibility/power/precision and simplicity/low learning curve/finger input. I'd be tempted to go more the flexibility route... but what is essential? for who? Where's the line drawn for "dead simple"? Would precision for the "drafters" slow down/confuse the "doodlers"?... Could build flexibility underneath and carefully build an advanced UX that people can graduate to, but at what costs?... At what point is the focus lost?
- vwochnik 9y agoI love it. Would really love the ability to "code" a shape using JavaScript.