I received the quadcopter yesterday. It’s clear this stuff is definitely not a toy, the Devo F4 transmitter (tx) is a pretty complicated device by itself already.
So my first thoughts after flying it;
It is super-sensitive! The slightest input sends it flying, resulting in numerous crashes indoor. On the 8th or so I broke the motor mount from a 2m high crash and fall.
Above you see I glued it with JB-weld, I might put a tie-wrap around it as well. I think one of the front booms is split too, I might try replacing it by a metal one if the weight is acceptable.
After fixing that, the quad would spin(yaw) around madly. I really had no idea what could have caused it; perhaps a weight imbalance, a twisted boom or a mis-aligned motor. Eventually I found out by reading online a bit; Clock-wise and Counter-clock-wise motors sit diagonally aligned with each other. Yaw is achieved by having either the CW or CCW motors speed up and take over from the other ones.
I had accidentally swapped out the two tail booms, messing up the CW-CCW alignment.
Another thing I learned from reading online, is that you can adjust the ‘rates’ in the Devo F4 Tx. This was never explained or mentioned clearly in the manual. But it can be accessed though Menu > Function Menu > Dual Rate. There you can set the maximum possible input, making the whole thing a lot less sensitive; it really makes a difference. Recommended in Rams’ topic on RC groups is around 20% compared to the original 100% The idea is to set up two-sets (hence the dual) of sensitivity setups, 20 for indoor, 55 for outdoor. Once you get better, you increase this. At least i hope so…
Additionally, I have barely bothered with the FPV stuff as learning to fly is hard enough by itself, and staring down at the screen is pretty difficult if you don’t master the controls. Perhaps I should’ve bought a non-FPV version to start with, though that comes with a much simpler controller that doesn’t seem to allow dual-rate… I’m thinking FPV without goggles might be too difficult, so I’m thinking about getting Fatshark goggles; cheap Teleporters or expensive Attitudes, i don’t know yet.
Additionally I ordered a slightly better antenna and lens as recommended by Ramsey in his topic; the default FOV on the camera is pretty tight, too tight to get a lot of awareness I think. The range is also supposedly not great with the default antennas.
I keep getting reports about XoliulShader 2 not work properly in max 2013 and Max 2014. This is a known issue. In short, this is the response:
Autodesk has completely broken shading in Max 2013 and 2014. I can not and will not fix this. You should go back to Max 2012 if you want the optimal XS2 experience.
Now some technical details for those who wonder.
Autodesk has been working on their own Viewport Display Driver to replace the (admittedly aging) DirectX9 renderer. This new Nitrous driver is their main focus, and has broken support for my custom shader.
Autodesk’s focus on Nitrous has resulted in bugs being introduced in DirectX9 for Max 2013 which are of yet unfixed for 2014. I have informed the Product Manager for 3DS Max, Frank Delise, he acknowledged my reply and would pass it on, yet no fix has happened.
The problem specifically is that tangent data is no longer passed to shaders by the application in DirectX9 mode. When displaying the tangent data as color, this image by Nico Ulbricht shows the problem (same debug shader in both versions of Max):
As is clearly visible, Tangent data is returned as a constant for the entire model. This results in incorrect shading.
Now, the worst part about all of this is that it does not just break external shader support; the problem is also visible when using the standard, built in “hardware display” shaders, a core feature of Max, created by Autodesk themselves. I can only guess that DirectX9 development has completely taken a backseat these days…
Custom shaders do seem to work to some degree in Max 2014, I will investigate this and see what is possible. For now, my shader does not work properly with it.
So the Borderlands 2 guns look amazing. I found the Nerf Spectre, which is a bit of a rare gun, to match well with Hyperion’s angular shapes. The yellow and black scheme has turned out fantastic, this is definitely a step up from all the previous guns.
I might do a few more Borderlands 2 inspired guns…
Not all that terrible looking at it now. I had spent a few months converting existing GTA:SA cars to Crashday before I attempted this, I had even already learned to UV when I had to redo textures on some cars (I remember manually painting Ambient occlusion once LOL).
This is the key piece of code. If you don’t set bakeEnabled, it won’t bake. Easily overlooked. Bakechannel I’m not sure of the default, but you most probably need to set this explicitely. nDilations was my problem: this is the “edge padding” value: not explicitely setting it results in useless bakes! There is not a single warning on this in the Max help anywhere!
bp.removeAllBakeElements() --clear all to be safe and clean
dbe = DiffuseMap()
dbe.enabled = true
dbe.outputSzX = 128
dbe.outputSzY = 128
For completion’s sake, here’s the rest of the essential code. The Bake elements have VERY generic class names such as “DiffuseMap”. They have to be enabled explicitely again.
The filename and filetype properties of the bake element are again very important: failure to set these and your bake element will not be able to create a bitmap. You’ll get a non-descriptive “Error Creating Bitmap” message. It doesn’t actually save them to that location though…
Also, very important to note: Edgepadding, or the ndilations value, is not applied when you set just “.tga” as filetype. If you set “filename.tga” it will apply them. The actual purpose of filetype vs filename is very vague and unclear.
Hopefully that will help out anyone who’s running into this same issue!
Its been years since I did actual game-like programming, but thanks to Rafael at work who told me about Flixel and using Actionscript to get started. I never knew it was this easy, I thought you needed to know flash and all that, but it really is a lot like the 2D C++ “GameEngine” I learnt to program with in university. Only much easier, faster and less limiting. I’m not saying C++ is slow and limited, but for someone who codes for fun, I couldn’t care less if c++ allows more control and all that.
It’s the start of a spaceship game that should have everything random generated (well except for the names). I based the spaceship generation code on Dave Bollinger’s PixelSpacehips. (site’s dead, hence wayback). Keep refreshing, it’s different every time! It also cycles between 5 types of country naming types, US, Japanese, Russian, German and French (it’s so fun coming up with the names).
Plus, I just found out you can do shaders in Actionscript, so now I can manipulate graphics faster and even easier!