The Learn Programming AcademyThe Learn Programming Academy
  • Home
  • Courses
  • Meet The Team
  • Blog
  • About Us
  • Contact
  • Home
  • Courses
  • Meet The Team
  • Blog
  • About Us
  • Contact

Programming

  • Home
  • Blog
  • Programming
  • 3D Programming Made Easy!

3D Programming Made Easy!

  • Posted by Shay Tavor
  • Categories Programming
  • Date September 9, 2018
  • Comments 0 comment

3D Programming has never been so accessible.

I was always attracted to 3D programming and graphics. The way we can create real-looking models of the world with two dimensional screens has always hypnotised me.

When I enrolled in my first degree at University in computer science, I took a course in computer 3D graphics; back than it was a totally different world. All the graphics were done in C or C++ and you had to do most of the math and physics by yourself.  And there’s a lot of math there – I mean, a LOT. Vectors, geometry, trigonometry and so on, you had to be really good at that in order to write 3D graphics. Not to mention the high demands in memory and CPU those programs tend to consume, which made them unsuitable for the standard computer.

Well, those days are over. A lot has happened in the computing world – huge things! – and an advance in 3D programming is one of them. Not long ago I stumbled across the Javascript library called Three.js, and my life had changed (well at least in one perspective).

What is Three.js?

It’s a Javascript library that supplies functions and objects for creating and programming three dimensional graphics. The library’s code works on the WebGL library and offers more or less the same functionality. But the really good news here is that Three.js’s goal is to enable 3D graphics programming without the complexity that usually characterises these projects. It does so by omitting most of the complex mathematics and physics. Sure, you still have to know the basics – a little bit geometry and trigonometry is a must have – but other than that, you can count on the Three.js engine to make the computations for you.

For me it was a real blessing. I love to program, I love to think of solutions to problems, and using Three.js enabled me to do just that. Every crazy idea I had, every animation, graphics, game, you name it, was transformed thanks to Three.js algorithmic problem, rather than a math course. Three.js let me do what I love – to program, to find great solutions and not to be a mathematician.

The other advantage of Three.js (and it surprised me because I’m old enough to remember how things used to work) is that it all runs on the browser. No special hardware is needed, no special installations or software. Just your plain browser and your standard computer. For me it was almost too good to be true, but it works. Even relatively complex computations are done fast enough to go unnoticed. I guess much of the praises are owed to the modern computers and browsers that are incomparable in their  powers to the computers only a decade or so ago. But part of the good stuff is owed to Three.js as a library. Its creators did a really good job of crafting a useful, clean and efficient library that actually makes our life (at least our life as programmers) better.

The library’s 3D model is pretty much the same as any other – it is based on a scene in which the 3D objects are located, a camera that provides the point of view, and the renderer that puts everything on the view port (in Three.js’s case – the browser).

Most of the common 3D objects such as cubes, spheres, cones and so on, are represented as pre-defined objects so we can use them out of the box (again – simplicity is the keyword). Other elements like shadows or sprite motions may be more sophisticated to manipulate. But all in all, I think that you can get up and running with 3D graphics in much less time with Three.js than any other library I’ve seen.

So, what do you need?

First of all, you have to know how to program in Javascript. You don’t have to be a professional, but a little more than basic knowledge is required if you want to do something useful. Besides that, as I said above – basic math is needed. But beyond that – only a browser and a text editor. Simple as that.

I know that for me, Three.js library was the tool that helped me start writing awesome three dimensional animations, and it certainly let my creativity out. I was finally able to concentrate on programming, in thinking and was able to put my ideas into action with my abilities.

If you love to program, and 3D animation and graphics make your brain start coming up with an endless numbers of projects – you may want to check my 3D Programming With Javascript And The Three-js 3D Library course on Udemy.  You’ll love it!

  • Share:
mm
Shay Tavor
I have more than 15 years of instructing experience - both in academy and industry. I teach students from all levels of knowledge and know how to explain everything to everyone. I teach and specialise in number of topics, include java, android os, web dev, big data and more, and know how to give the algorithmic way of thinking to my students.

Previous post

Data Structures – Choosing the Right One
September 9, 2018

Next post

The Kind of Apps That You Are Not Building, and Should
September 11, 2018

You may also like

The Complete JavaScript Course for Developers
16 January, 2019

Recently a student in my The Complete JavaScript Course for Developers course asked about the capabilities and limitations of JavaScript. Specifically, can JavaScript collect and handle data from a user in a mobile environment. The answer is an unequivocal “yes” …

Java 11 has Arrived. Is it time to panic?
27 September, 2018
java11
Kotlin – Java Developers Have a Head Start
26 September, 2018
Kotlin – Java Developers Have a Head Start

Leave A Reply Cancel reply

Your email address will not be published. Required fields are marked *


Popular Courses

Java Masterclass 2025: 130+ Hours of Expert Lessons

Java Masterclass 2025: 130+ Hours of Expert Lessons

Learn Python Programming Masterclass

Learn Python Programming Masterclass

Beginning C++ Programming – From Beginner to Beyond

Beginning C++ Programming - From Beginner to Beyond

SQL for Beginners: Learn SQL using MySQL and Database Design

SQL for Beginners: Learn SQL using MySQL and Database Design

C Programming For Beginners – Master the C Language

C Programming For Beginners - Master the C Language

Data Structures and Algorithms:  Deep Dive Using Java

Data Structures and Algorithms: Deep Dive Using Java

  • Privacy Policy
  • Terms & Conditions

logo-eduma-the-best-lms-wordpress-theme

+61 422 512 549

[email protected]

Company

  • About Us
  • Blog
  • Contact
  • Become A Co-Instructor

Links

  • Courses
  • FAQs
  • Contact Us

logo-eduma-the-best-lms-wordpress-theme

+61 422 512 549

[email protected]

Company

  • About Us
  • Blog
  • Contact
  • Become A Co-Instructor

Links

  • Courses
  • FAQs
  • Contact Us

  • Privacy Policy
  • Terms & Conditions

Would you like to become a Udemy Course Co-Instructor?

Struggling to find students? Let us publish and promote your course to our students.

FIND OUT MORE NOW