just how much do you need to know to build blender?cycles

well… something like blender,
first a super advance level of programing (master degree)?
then
obvuiously, physics? (1st degree?)cuz you have all those wave properties to sort out, and stuff
then the maths, at least an a level, with all those vector equations and graphs,

i mean the creater must be a GREAT person, if only there was more of that kinda people in the world, there world would be better.

well, my point was just that what if i wanted to make something in cycles…

And since Blender is not the work of one single person you can think that the world is the best world to live in to our knowledge, full of beauty, mystery and talent! :slight_smile:

To “build” blender, you need to know very little.
To develop blender, you’ll need to be familiar with programming concepts, and maths, physics and other life skills.

Depends on what you want to make really.

I know very little math (art history major) and managed, with the help of google, to figure out enough linear algebra to code up a pie menu addon. Also have contributed to blender in other ways without needing math or physics like helping out with the py-api.

A while back IdeasMan released a virtual linux machine that was pre-setup to build Blender automatically. This is the only time I have been able to successfully build Blender. I have tried many times to configure my machines (OSX, Windows and Ubuntu) to build Blender and have always failed because of the complexity of all the software required to do a complete build. For some people it seems easy, for others, like me, it is a giant challenge.

You may want to ask yourself, “Why do I want to build Blender?”

Why not just use an existing build?

I haven’t touched on OS projects building from source in years, with the guidance of the blender wiki pages on building for OSX I’ve managed to do it on first try in about one hour. Its really simple really. As for OPs original question as I see it, building (as in developing) a big project as Blender would take a few man years I don’t a way to make it anything less than that if you start from scratch. There could be some shortcuts however as there are some frameworks that offer a nice basis last but not least being Fabrics engine Creative platform. I would start from that for such endeavor, if I don’t have a team of programmers behind me.

@1832vin there isn’t one creator of blender, its developed by many people. Also not one person knows every part of Blender.

Why are you asking this?

“make something in cycles…” — can you explain what you want to make?

You don’t really need much knowledge in physics (certainly no degree) to code something like Cycles and I don’t think there’s any amount of advanced physics in Blender, whatsoever. The parts that require physics require the kind of “simple” newtonian physics that a physics student will deal with as an undergraduate.

Fundamentally, you need to know how to program and have a firm grasp on basic linear algebra. It also helps to learn this linear algebra in a graphics-related context, because generalized math courses tend to not be very efficient at teaching people anything useful.

As some like to point out, a simple pathtracer can be written from scratch in one hour. The underlying concepts are not complicated. What can become complicated (and laborious) is taking these concepts into a framework that people can actually use.

I don’t know whether a level of intelligence above average is required to achieve any of this, but I do know that it requires persistence. You really have to want to do something, because things can take time - a lot of time.

Also, a word on degrees: When it comes to Computer “Science”: You don’t need them. At all. It can help to follow a curriculum, but unless you’re looking into going into academia, a lot of the work that goes into a degree is a waste of time. If you want to develop something for people to use (as opposed to doing research) you’d better spend that time on getting real-world development experience.

You need to know how to mkdir, cd into it, then svn the right address, then cmake/ccmake a few settings need changing, then make, then make install.