I want to build a simple 3D modelling software to create furniture designs. Just drag n drop item such as door etc., and custom width or length. I know how to create basic GUI, but don’t know with the 3D designing environment part. What kind of tool should I use? Any kind of tips would help. Thank you.
Classes to get you started:
- Fusion 360.
- 3DS Max .
- Wings 3D .
- 3D Builder.
Courses to get you started:
- Complete Blender Creator: Learn 3D Modelling for Beginners. …
- Creating 3D environments in Blender. …
- Learn Blender 3D Modeling for Unity Video Game Development. …
- Blender 2.8 The complete guide from beginner to pro. …
- 3D Modeling Piped Systems in AutoCAD. …
- The Ultimate Blender 3D Modeling Guide.
Other Platform to get you started:
Graphical User Interface
In my personal development experience Windows Forms is just about as easy as it gets when it comes to rapidly deploying a GUI application on Windows. WPF is of course another option, but using it would likely require you spend some time familiarizing yourself with XAML.
Windows Forms look and feel like a lot of the available GUI options for Java, it’s just much better than the majority of them, in my opinion.
- If you want the fastest possible GUI development time in .NET, Windows Forms is it.
Initially, I chose Java to build the GUI. Why not C++? Although it’s closer to the machine, is faster than Java and all, Java already has plenty of inbuilt methods that I can use and the project didn’t need much processing power.
- I never tried the Qt library for C++ as I knew Java already. If you can handle pointers and manage memory well, go give it a try.
Now, Swing or JavaFX? Swing is, in my opinion not needed when you don’t want access to every pixel on the screen. With JavaFX, animations and transitions are a lot easier now.
Besides we can use CSS to design the components. You can use Web engine class to load the webpage as a GUI-component and create your other components normally as needed.
Electron framework gives you a window when you execute the code. The window displays a webpage that you defined in some file. Moreover, you get all the chrome inspection tools for debugging. So, if you’re familiar with web development, you know how easy it has become to build the GUI.
- & I got an additional advantage… Electron uses NodeJS. This gave me access to the NodeJS file system module. File Handling and Execution of terminal commands are easy now(for compilation, execution of code). The choice is very clear now, what to choose for GUI.
LEARN THE LANGUAGES
Electron Tutorial: David Cameroon-Youtube
HTML, CSS, JS Tutorial: w3schools
NodeJS File System Module: Official Docs
Web Frameworks(if needed): Angular, Vue, Bootstrap
Hopefully, wireframing will help you decide which framework to use.
Once you are familiar with the languages, the coding phase is real smooth. Just in case you’re stuck: StackOverflow is who you call for help. Before asking a question, do a thorough search on the site, most probably, someone has already encountered the problem that you’re facing.
PS: Use GitHub or any other Version Control System (VCS). It’s a backup of every saved instance of your code.
For desktop applications there are basically two options; WinForms and Windows Presentation Foundation (WPF).
WinForms is more traditionally built and hence easier to learn. WinForms might therefore be a simpler start, but if you plan on actually using your gained knowledge in GUI development for .NET I’d say you’re better of diving into WPF from the start. It’s a much richer framework, and where Microsoft is putting their effort for desktop applications. It is also similar to Silverlight, meaning you can easily get into Silverlight too when you know WPF.
- This other question gives some useful resources when getting started with WPF.
- Also check out this tutorial at MSDN.
- WpfTutorial obviously has a few nice hints for you too!
Thanks for the tips, sorry cause i am so forgetful about this post I have made. Mainly because the project I was started working on got suspended after the pandemic. peace.
Thanks, I will start learning all this stuff tomorrow. Need to learn about alot of things absolutely.