So we used to have shave and a haircut, then sasquatch, and now an improved FiberFX. For one who doesn’t need hair in their projects very often I found this a major bonus. The few times in the past I have tried to use it, LW would either turtle up one me or out right crash.
Today was way different when I read a sad post that sasquatch didn’t work in 2018, it made me think why can’t we now use FiberFX? The answer for me is you can. Sure there is some instances where it won’t work but for 99% of the time I believe you can make it work.
During the time I was playing with it one of the most annoying things to me was I couldn’t change the hair color. In the past it was simple to just pull up the node editor in FiberFX. Well the good new is the moved texturing to the more powerful surface editor! Surface editor is now starting to look like the one stop shop for all our surfacing needs.
I have yet to make any amazing hair that I would share. I can say the tools are easier to use and I was able to make a quick hair do for my sphere model. I’ll keep updating this post as my experiments get a little better. But what I do know is in the past FiberFX looked easy to use but never worked for me. 2018 has changed that. I would expect some talented artists out there to start making some killer hair-dos. If you get some good results please share your results.
Here is a quick test render that took a few days to get these simple results. The main thing I learned from this is that the FiberFX has reflections and shadows. This was a big complaint for some of the hair plugins we had in the past.
For more technical information on FiberFX you should check the manual at NewTek.
Physically Based Rendering (PBR) is a new buzz word in the world of 3D which just means more complicated terms for us artists to learn. But this is a term which should be exciting for those who work on large projects with multiple scenes and different light setups Physically Based Rendering will speed up moving models from one scene to the next. In theory now the new materials will look proper for most light setups but and practice always do a test render and see how your objects will look.
Even though LightWave is touting this as a new part of their render engine to me it looks a lot like the different materials we got when LightWave 9.0 was released and texture nodes was introduced. Don’t get me wrong this is very exciting to have a major update to the render engine but we need to realize what it took to build. NewTek has spent years trying to improve their really great render engine and now the full integration of materials into the pipeline is amazing. Continue reading “Physically Based Rendering”
NewTek finally released the next iteration in their 3D software, LightWave 2018, and it is looking amazing. This wasn’t that much of a surprise since a good friend updated me on this weeks before. Well now that the whole world knows LightWave 2018 is here! Are you ready for this new update?
There are many changes and a lot of them center around the render engine being rebuilt in 2018. This means the old surface editor has been obliterated to make room for a fancy new PBR (Physically Based Rendering) based system. You maybe wondering what PBR means to us and I will dig deeper into this new technology for those interested. PBR is a deep topic and will require a lot of my time to explore. Stay tuned for there will be some explanations and examples coming. Continue reading “LightWave 2018”
2017 will be a year to remember but looking back I have to ask myself what did we do to make it go so fast?
One thing is the cool new world of micro processors and the many different projects that look fun to build. After reading a book on Node.js the author put in some gems about robotics which peek an interest. I got my first Arduino UNO board and have been hooked on building different test projects and now working on a self driving robot.
In October we got a chance to visit Adobe MAX and let me tell you what an inspiration it is to visit such a large geek/nerd show and see so many cool people enjoying being a geek. We are already planning going to MAX in 2018 so hopefully we will have more fun information to share. Most of the lectures were spent learning Premiere and After Effect which means I should take some time and write up a few new tutorials for the site. Maybe this should be a 2018 goal to get back into working on tutorials.
Towards the end of 2017 I started working in Lightwave again and building some models for a game. I’ve been missing the creative side of my work these past few years since most of the projects I work on now require a lot of code. But building a game it has been nice because now I can work in LW again and build custom models.
Learning has always been a most import part of my daily workflow. Although the more I learn it seems that there is less I know and more I forget. But hey I guess as new ideas are learned I need something to fall out so I can use other brain cells for more pressing needs.
Well happy new year and hope this one will just be as fun and productive!
Sorry today’s post is kind of random but today when the power went out it reminded me how much work is needed to bring my network backup to an operational level. With iSCSI initiators failing to connect because of a boot issue it made for an unhappy network server and staff. It also didn’t help that at the same time I needed to rebuild the RAID array.
Why do networks have to be so complex these days? They used to be a simple way to push files around the office and keep those people out of places they didn’t belong. Now we have NAS storage systems, VoIP phone networks, and on top of this security is even more evasive.
Well those are my random thoughts for the day and I wish instead of doing this work I could be playing in LightWave.
Last year was a busy year at work and I must say I had many small accomplishments. Looking back at last year I can’t believe the many new things I learned. It started when we got a toy quad copter for our son which turned into a fascination of mine to learn how to fly. Don’t worry I’m not going to start a tutorial on how to fly there is plenty of those on the internet. Next when I went back to working in 2016 we start working on moving our entire company from two building into one which meant combining 80+ employees into one new network. So I got to learn how to program VoIP switches and build a network from the ground up. Install a new firewall which was fairly straight forward. Then we installed a new WiFi network which include several access points that then linked into a master controller.
If that wasn’t enough for one year we released a new major version of our time tracking system which I worked on for at least 6-8 months in 2015 and finally put the polishing touches on in 2016. It brought many new features and made the system more mobile friendly. Overall this release was fairly well tested and ready for production with a few minor issues that got fixed quickly.
Next we launched a new project which required a new application engine to be built to help support the adverse new technologies on the internet. This code base has been a lot of fun to work and and has really started to take shape in our current project.
As for Lightwave I did upgrade to the latest release and rewriting my tutorials for the current version as you can read on the site. I didn’t do as many tutorials as I was hopping to do but maybe this year we will find some time to sit down again and start building some tutorial projects.
I would like to bring back the preset library we had started developing for this site many years ago but we will have to see if there will be time this year.
Event though I only listed a couple of small projects there was a lot going on which made this past year go by quickly. Hope you had a good year and that this year is even more exciting!
Now that I have an application how do I run my code?
The first and most reliable way is to use an alert box to send a message.
A browser when it loads this code will popup a message box that say’s hello. It is very simple and very easy to show output to the end user but the alert box should be only used when you need to tell the user one message. The problem with an alert box is it becomes a blocking command and will stop the user from accessing your website until it is closed. Many times I have put this into an infinite loop which will crash the browser or annoy your end user so much then don’t want to receive alerts from your program. So use this one very sparingly so that you don’t send a ton of alerts to the user.
In the above code example it shows three different methods you can call to send debug information to the browsers console message. To see these messages you need to open your developer tools for your current browser to see these messages. This is different for each browser and many times it can even be dependent on the version of your browser. For the current version of Chrome Version 54 it is hidden under the three dots -> More tools -> Developer tools or [CTRL]+[SHIFT]+[I]. Microsoft Edge pressing [F12] or pressing the three dots -> Developer tools. If you have a different browser just check the internet for how to open their developer tools.
The next way is a little more difficult and requires some extra work but we can use this to add HTML code to the page and display it.
document.body.innerHtml += "<div>Hello World</div>";
var div = document.createElement('div');
div.innerHTML = "Hello World too!";
These are typically the most common ways to send output to your users. For debugging I like the console method the best because in many browser if I send an object to the console it becomes something that I can dig into and find what information is being store in the object and not just the object type. A lot of the functionality of the console is dependent on the browser developer so find a browser that has good developer tools and use that to start. But once you have some working code test it in as many different browsers as you can find.
The other day I got to use my HTML5 Canvas game engine for a project that wasn’t game related but needed to be dynamic. This project was a lot of fun until one of our project members couldn’t see the project on his browser. Digging into the issue some it was related to the Safari browser on his mac.
Without having a mac myself this was very hard to diagnose and the project member wasn’t very responsive. So instead of bugging our team member every few seconds as I tracked down the issue I found a cool website called BrowserStack where they have a lot of different browser you can use to test your site. This isn’t a bad option when you don’t have access to a virtual mac or even a virtual system to test on. The major down side I found to using this kind of site was that the iteration process was really slowed down.
The big pro on this site is that once you get the browser up and going it will save the link your testing and use it for just about any browser you run a test on. I would like to get a one month subscription for them to do some other major testing but I just did have the $30 to shell out for this project.
The same probably can be said about operating systems because new version come out just about every other year in the Microsoft world and in Linux the roll out is even faster. But for most user they don’t upgrade to the latest and greatest gear every time a new version comes out so be prepared to support old technology on any of your projects.
One of the major issues I ran into was the new promise structure of ES6. This was a cool idea to try and use but is only support by modern browsers which means Safari didn’t support it in 7.1. Fortunately I had already started building an event system for the engine so I changed it from the promise into being driven by an event.
The new “let” definition was also not supported so I had to change a lot of code where I used the less scoped let back into var. There were many other errors but once these got address I was able to then uglify my code without errors. It seems even today ES6 isn’t that well supported but hopefully this will start to change soon.