Page 1 of 1
Forum

Welcome to the Tweaking4All community forums!
When participating, please keep the Forum Rules in mind!

Topics for particular software or systems: Start your topic link with the name of the application or system.
For example “MacOS X – Your question“, or “MS Word – Your Tip or Trick“.

Please note that switching to another language when reading a post will not bring you to the same post, in Dutch, as there is no translation for that post!



3D printers - Findi...
 
Share:
Notifications
Clear all

[Solved] 3D printers - Finding a good one

50 Posts
4 Users
0 Reactions
23.5 K Views
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

Now the one for the fireball meteor:

FireBallMeteor( 4, 20, true, 40 );

Again I had to manual adapt the code, so something may go wrong, and FastLED is required.

// FireBallMeteor - Draws a meteor fireball
// Parameters : meteor size, trail decay, random trail decay, speeddelay

void FireBallMeteor( int MeteorSize, int meteorTrailDecay, bool RandomDecay, int SpeedDelay )
{
  int LEDPosition = 0;
  int LEDCounter;
  int aLED;
  uint8_t GreenReduction = trunc(64/NUM_LEDS) + 1;
   
  while(true)
  {
    fadeToBlackBy( leds, NUM_LEDS, meteorTrailDecay/2); // decay for all
    
    for(LEDCounter=0; LEDCounter < NUM_LEDS; LEDCounter++) 
    {
      aLED = LEDCounter;
      
      if( (leds[aLED].green>0) && ( leds[aLED].green >= GreenReduction) ) 
      {
        if(leds[aLED].green>128) 
        {
          leds[aLED].green = 128;
        }
        else
        {
          leds[aLED].green = leds[aLED].green - GreenReduction;
        }  
      }
      if( RandomDecay && (random(10)>5) )
      {
        leds[aLED].fadeToBlackBy(meteorTrailDecay);
      }
    }
    
    for(LEDCounter=0; LEDCounter < MeteorSize; LEDCounter++)
    {
      leds[LEDPosition+LEDCounter] = CRGB::Yellow;
    }
    
    FastLED.show();
    delay(SpeedDelay);
    
    
    
    if(LEDPosition < NUM_LEDS)
    {
      LEDPosition++;
    }
    else
    {
      LEDPosition = 0;
    }
  }  
}

 

I hope this works without issue, but there may minor hiccups since I manually had to modify the effect (and did not test the code like this).


   
ReplyQuote
(@lakerice)
Eminent Member
Joined: 5 years ago
Posts: 30
 

@hans Oh no is Blendswap a subscription now??  I hope not ☹️ I know you have to sign up with them though in order to download the models.  They never send newsletters though.  At least not in my experience. 

Haha I have to admit, I'm really unfamiliar with the world of VR but I'm sure that my buddy would be very interested in the info you sent me.  I'm not sure if he uses ALVR or Virtual Desktop so I'm gonna send him the info you sent me and see if it's of use for him (and then for me to try! :) ) Interesting regarding the comparison of game ready level design to VR.  I never thought of it that way, but it makes total sense.  I would imagine I would have to bake all the textures as my textures in my renders take a lot of computation and the game engine simply woudn't be able to calculate them in real time.

Hm nope, I'm still using Fusion 360 for free.  It scares a lot of users sometimes because there is a warning that your subscription is about to expire every so often but you but renew in the preferences.  It's totally free for hobbyists and I believe for small businesses that only make around $200000 a year.  Interesting you mentioned being able to work with different applications more easily.  Blender 2.8 basically did a major overhaul in part to address this.  For example, they made the default selection tool the left mouse button instead of the right one, as well as other things like menu selection that is similar to maya.  I believe this was to help make it easier for users who were using famous programs like Maya to be able to learn Blender more easily.

Interesting the software problem is not just in the art studio world, but with the exception of labs like you said.  That makes sense, since they need to be more cutting edge and modern.  Government is the worst.  They are always using the oldest applications and usually many versions down on Windows.  I remember before I left, there were bosses there who were still using Windows 7!  And also asked me frequently where the printscreen key was.  But sadly that mentality isn't just limited to software, but I digress :)

Wow you covered the shitty responses perfectly!  I think I've gotten them all hahaha.  I get acclimatized to it but the one comment I cannot tolerate is where someone refuses to answer and says "we're not going to do your work for you".  I had to respond to that guy and prove that I had been trying for hours to get the answer and to ask him what exactly is he implying.  I don't respond with insults but I will defend my post lol.  He ended up helping me in the end but it was totally unnecessary to post a response like that.  Doesn't help other users either.  It's funny though, I've been told by friends that's just the way engineers or electrical people are but I don't believe that represents everyone.  There are helpful people in all disciplines. 

Haha!  Regular people should not have to understand your thesis??  Wow that professor was very out to lunch on that perspective.  The height of intelligence is to be able to explain the highly complex in the most simplest of terms.  Noam Chomsky talks about this frequently; that academia tends to complicate and obfuscate terminology in order to be precious about their theories or positions but in reality that just shuts out the masses.  When you think about it logically, that viewpoint is similar to explaining a theory to a wall, because no one will be able to hear what you have discovered.

Thanks for that comparison list!   Holy smokes the ESP8266 is much better bang for your buck.  I think I will definitely be using it going forward.  Does it have an internal pull up resistor as well?  Does it work seamlessly with Fastled?

Haha ya the LED project is pretty ambitious; I'm definitely over my head in all this stuff but then again that's how I always approach projects.  But I have been posting on electronic stack exchange and the Arduino forum for safe wiring and powering advice because it is a lot of power. 


   
ReplyQuote
(@lakerice)
Eminent Member
Joined: 5 years ago
Posts: 30
 

@hans Thanks for this!  Unfortunately it only seems to do the white colour and then it stops and freezes.  I'm not sure why. I attached the .ino file.  Also, I'm using an Arduino Nano for this, and the effects are skipping around like crazy and are almost random with the toggle switch.  I'm wondering if this is because there is not internal pull up resistor in a Nano?

 


   
ReplyQuote
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

Not sure (yet), but I think subscription may be optional for BlendSwap ... (fingers crossed)

I've been playing with importing 3D models to Half-Life:Alyx and it does have its challenges as it seems to need collision models as well (super simplified version of the 3D model).
For a simple box this would be easy but for a chair or a building (that you can enter, or with a porch etc) this suddenly becomes quite challenging. I wish there was an "simplify model" button (or: minecraft that model hahah).
The Source-2 engine (the 3D engine used for Half-Life:Alyx) optimizes a lot of things, but sometimes we have to help a little. So the collision model is invisible to the player, but because of its simplicity, it takes of less resources to calculate collisions.

As for baking and such: the Hammer tools handle most of it for you - so not much work to be done there. I have found that importing models is quite easy once you understand a few things better (I'm still learning).

Thanks for the Fusion 360 tip - when Fusion 360 became available, initially for free, I did play with it for a bit. I really liked it. 👍 

Switching between Blender and Hammer can be frustrating at times though. The controls for panning and such are just different. So after a few hours of working in Hammer, working in Blender becomes very annoying for a few minutes (and vice versa). I really am impressed by Blender (and Hammer). Just wished the world of 3D tools would become a little more "standard". Oh well, FBX models work for both so I'm good to go. Just have to figure a way to make a super simple model of complex models (for collision).

I found that educated folks in labs are much more eager to get better tools. The current tools are typically quite outdated or horrendously expensive. 
Haha I can relate to the "not want to change" culture. Believe it or not, less than a year ago I ran into users that refused to let go of Windows XP.
In their defense: there is nothing wrong with XP, but you will have to put some extra security rules and measures in place, and if something goes sideways, IT people right away point at that one XP machine hahah.

Yeah, I hate those "we're not going to do the work for you" response as well. Then simply do not respond. They seem to be willing to spend time on reading and writing a shitty reply. So either help or stay quiet. 😋 

This is what I do, some users totally refuse to read an article, or search the comments for a solution, so I do get repeat questions every now and then. In those cases I refer to an earlier comment/solution. There is no need to be an *ss about it 🤣 

I wouldn't say it is an engineers or technical people "skill" to respond like that, but I agree that the majority we would run into are engineers/technical people. I think it has to do with wanting to feel superior? (by lack of better explanation) Oh well, in the end I believe that helping each other is just more fun and more satisfying. Nothing cooler than seeing someone happy and grateful for your help. Sometimes they come with the coolest projects, and being a part of such a project is very satisfying as well. Just like reading that folks find my articles or code useful. Just makes my day 😊 

Haha, I totally agree with the point of view that academia want to obscurify their work as much as possible. Kinda sad when you really think about it, and I totally disagree with that view.
However, I do have to say that a lot of people think they have become experts because they know how to Google. Knowing your limitations, be kind, be respectful.
I'll have to look op Noam Chomsky ... sounds like an interesting person!

As for the ESP8266 ... I do not know if it has an internal pullup resistor. From what I read here: there is a pull-up resistor on GPIO2. (thanks Google! hahah)
Working with FastLED works great, and straight out of the box.
Initially I was worried about this, since the pins of the ESP8266 work with 3.3V, where as quite a few LED strips work with 5V (I commonly use WS2812 strips). So after reading a lot about shifting voltages, I found out that none of that is needed and I was able to plug the strip in without any additional hardware. So my current setup, for new LED effects, simply uses a power supply, an ESP8266 and a LED strip. Nothing else needed.

Two tips though:

1) For all Arduino's and other boards: FastLED shows these weird PRAGMA messages (useful for devs, confusing for beginners, useless for me). This can be prevented by adding a define line (red below) before including the FastLED library:

#define FASTLED_INTERNAL // just used to mute the Pragma messages when compiling
#include "FastLED.h"

2) Because of the way FastLED uses interrupts, you may experience the occasional flickering. This worked for me (again: add before including the FastLED library:

#define FASTLED_ALLOW_INTERRUPTS 0

Yes your project is definitely ambitious, but also super cool!
And yes, safe wiring is a must haha ... you're working with a lot of power there.
I'd probably with several power supplies and make sure they share GND.
Also the wires cannot be too thin (having multiple PSU's however will make this easier, since the power per group of LEDs will be lower than the sum).


   
ReplyQuote
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

Coming back to your code.

OK so my new LED effects code works very different from the one I used in the earlier project (the one you're basing yours on), so there will be a few changes we may have to look at.

The old project relies on loop() being done over and over again, and an interrupt is used to catch the button press.
This interrupt however will be a challenge in case you're doing this over Bluetooth or with a web interface - you cannot attach an interrupt to that.
So what I did instead is this:

1) a timer interrupt flags a variable every second to TRUE.

2) whenever the showStrip() is called, I'd call my own function which will call showStrip() and it will check if that variable is checked. If so, set that variable back to FALSE and check if anything arrived through the web-interface and change the effect if needed by exiting the currently running effect. If the effect changed: return false, if the effect didn't change: return true.

I hope that makes sense haha. I'm even debating if step 1 is needed. I could read the current time and see if we are beyond the desired time. Then again: checking for True or False is faster.

Either way: this means that in my new setup and effect keeps running forever and will never leave the effect function, unless showStrip returned "true", then exit the effect and go back to loop().

So in your case I'd start by simplifying the entire code. Let's first egt the desired Belgian flag to work, and later look on how we can migrate it to the code.

I did a quick experiment on the ESP8266 (red line - since I have that setup right now), and this is working (just that effect).

Also you may have to change the PIN and LED_TYPE to match yours.

#define FASTLED_ALLOW_INTERRUPTS 0
#define FASTLED_INTERNAL 
#include "FastLED.h"

#define NUM_LEDS    60      // Number of LEDs in strip
#define LED_PIN     4       // GPIO pin we used for the strip
#define BRIGHTNESS  255      // Default LED brightness.
#define LED_TYPE    WS2812  // Type of LED strip
#define COLOR_ORDER GRB     // Color order LED strip

CRGB leds[NUM_LEDS];


void setup()
{
  FastLED.addLeds < LED_TYPE, LED_PIN, COLOR_ORDER > (leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
  FastLED.clear(true); // clear LEDs and Show
}
 
//  REPLACE FROM HERE 
void loop() {
  FireBallMeteor( 4, 20, true, 40 );
}
 
void FireBallMeteor( int MeteorSize, int meteorTrailDecay, bool RandomDecay, int SpeedDelay )
{
  int LEDPosition = 0;
  int LEDCounter;
  int aLED;
  uint8_t GreenReduction = trunc(64/NUM_LEDS) + 1;
   
  while(true)
  {
    fadeToBlackBy( leds, NUM_LEDS, meteorTrailDecay/2); // decay for all
    
    for(LEDCounter=0; LEDCounter < NUM_LEDS; LEDCounter++) 
    {
      aLED = LEDCounter;
      
      if( (leds[aLED].green>0) && ( leds[aLED].green >= GreenReduction) ) 
      {
        if(leds[aLED].green>128) 
        {
          leds[aLED].green = 128;
        }
        else
        {
          leds[aLED].green = leds[aLED].green - GreenReduction;
        }  
      }
      if( RandomDecay && (random(10)>5) )
      {
        leds[aLED].fadeToBlackBy(meteorTrailDecay);
      }
    }
    
    for(LEDCounter=0; LEDCounter < MeteorSize; LEDCounter++)
    {
      leds[LEDPosition+LEDCounter] = CRGB::Yellow;
    }
    
    FastLED.show();
    
    delay(SpeedDelay);
    
    if(LEDPosition < NUM_LEDS)
    {
      LEDPosition++;
    }
    else
    {
      LEDPosition = 0;
    }
  }  
}

   
ReplyQuote
(@lakerice)
Eminent Member
Joined: 5 years ago
Posts: 30
 

@hans Yep you definitely have to create a profile and log in with Blendswap but as far as I know, the only stipulation is if you download a lot of assets, you have to upload a few assets of your own.  I think that makes sense.  But it's pretty high bar, and most of the time you won't go  over  your limit of downloading.

Interesting you have to simplify the model and add collision for Half-Life: Alyx.  Is that the same as making the object lower poly for video games?  That's definitely an area I don't have experience in.  Although I have used Blender's decimate modifier many times for sculpted objects that are very high poly. It's a great tool because you can adjust the number of polygons but not apply it permanently (although you can apply it if you want to).  Actually, it does make sense that you have to prepare it for Half-Life though, since it is pretty much a video game. But very very cool that the Hammer tool helps with baking materials; because man, that is a pain in Blender...perhaps because I never really need to bake them and I haven't done it frequently.  I assume from what you were saying, you felt similarly.

No problem.  Fusion 360 is still free, hopefully forever.

Wow you met diehard XP users?? That's incredible lol.  I mean, it's just an operating system like all others but like you said, I would imagine you would have to really increase security. Many people don't like upgrading though, and it's understandable sometimes when a monopoly like Windows releases crap like Windows 7 lol.  I've been trying for years to get into Linux but there's always some problem and it usually requires code, so that's annoying (for non-coders like me anyway). But I do love the open source aspect of Linux.

So yes, you have the right attitude about repeat questions!  Because frequently on the Blender Stack Exchange forum, people will simply redirect the question to another question that had been answered.  I find that incredibly helpful. It's simple, but very useful. Actually, you're not wrong at all about the superiority problem among some people on these forums.  Especially the Arduino one for some reason.  Even today, when I was researching using a common ground for my LED project, these guys were bickering back and forth on the forum about how bad one guy's advice was, how he doesn't know what he's talking about, etc.  Man, I cannot understand why these guys fight so much haha.  But anyway, I'm trying to get a solution, so I just keep looking.  But exactly like you said; it is satisfying to see what people have done with your code and to have helped someone make something cool as well.

Yep Noam Chomsky is one of the most interesting intellectuals in my opinion.  He is very good at identifying power structures and very critical of US foreign policy.  But he also has interesting views on linguistics (having practically created the field) and how human language compares to that of machine learning and artificial intelligence.  Whether or not you are a political person, I think he has interesting things to say. But of course, that's just my opinion 🙂 

Yeah for my project I'm basically connecting all the grounds from the PSUs to the Arduino ground pin.  I'm hoping that's right; I have found a few answers that speak to that.

Oh sorry I meant to ask if the Arduino Nano has a pull up resistor.  I tried googling and didn't find anything specifically about the nano.  most stuff was about the Uno. If I have to, I will solder a 10k resistor (I'm assuming it needs to be 10k based on what I've read) with the tactile switch but I really hate doing that.

 

Thanks for the code again!  Unfortunately it still does the same thing; it basically swirls to the top but then stays stuck.  Like it doesn't slows dissipate like your original meteor effect. Also, it's only yellow from what I can tell.  Do you think it might be a difference from you working with the ESP8266?  I am using a Nano for this.  I think I understand your function on a very basic level; like if/else/true/false?  Either way, I appreciate it!  I do hope to get better at the coding part as time goes on.  Oh and yes, I did adjust the code to the pins I was using. 

 

 

 

 

 


   
ReplyQuote
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

I signed up for BlendSwap last night and one can still download free models indeed.

Well the thing is this for Half-Life:Alyx.
When creating an object, you can use any complex 3D model (less complex is always better of course).
Next you'll need to create an additional simple model for collision detection and physics.
They use the simple model to do cheap collision detection - which makes sense in a game.
So the simple model kinda sits over the complex model. Complex model for the visuals, and simple model for collision.
The simple model will never be visible though, and for simple 3D model (cube for example), Hammer can calculate the simple model for you.
The calculation by Hammer is not every effective for more complex models (for example a house with a deck and open doors and windows).

I have to dig in to that decimate tool. I clicked it a few times, but haven't really seen any results - time for me to read up on that topic 😜 

Yeah, as a system developer I know first hand: people do not like change haha.
I too have tried to get into Linux, but I keep running into limitations (especially with certain tools like Photoshop).
Oh well, we will see - I always am open to new things, so I do try and keep trying 😉 

As for online comments: I don't understand these people either. Why put all this energy to be angry and waste time pissing other people off?
Instead they should either ignore the topic or be helpful. Oh well. On my website I do not allow this kind of behavior 😊 
On that note: I once had an argument with someone after I had removed their insulting message.  Claiming that I did not have the right to do that, freedom of speech etc. Haha.
I read a funny meme the other day: People have become accustomed to be rude and impolite due to social media, not having to face being punched in the face.
Probably a good point to it hahah. (I'd never punch anyone in the face - I'm a non-violent person)

Having a shared ground is pretty much required for the LED strips to work, so yes: that's the right thing to do. Just keep +5V separate.

As for the Nano having a pullup resistor; I honestly have no idea. I'd guess it would have one, since it is an Arduino product and they all seem to have that on at least one pin.
Thought quite a few topics mention adding one - probably because the other pins may not have one?

Code; A I see what you mean, I think ...

Maybe if you change that last

if(LEDPosition < NUM_LEDS)

to

if(LEDPosition < NUM_LEDS + MeteorSize)

or maybe even:

if(LEDPosition < NUM_LEDS + (2*MeteorSize) )

Just so it keeps going a little longer.
I don't have my stuff handy right now so I cannot test it.


   
ReplyQuote
(@lakerice)
Eminent Member
Joined: 5 years ago
Posts: 30
 

@hans Sorry for the late response...I haven't been home this weekend. Will be back Tuesday so I can test your code :)

Great to hear you were able to sign up for Blendswap and get free models!  Sometimes you have to do some digging to get what you want, but there's a ton of incredible assets and environments people on there have made.  Quite incredible when you think about the community that wants to give that stuff for free.

By the way, did the link work for my cabin renders?  Can't remember if I did that right.

Ohh I see so for Half Life: Alyx you just have to upload the same object but lower poly for collisions.  Very cool and smart! 

Yes the decimate tool is probably the simplest and most popular tool in Blender for preparing models for lower poly count.  There are many tutorials for it, so you'll probably enjoy using it for Hammer or Half Life: Alyx.  It does have more than one way of lowering the count, but generally speaking you can learn the decimate modifier within a few minutes.

Yes, Linux has always been a challenge with using Windows and Mac programs, although I'm sure it's much better nowadays.  I found it was challenging to get simple things like touch screen scrolling to work with standard browsers like Firefox.  Interestingly, Blender crashes on my laptop for Windows but when I boot into Linux Mint and use Blender it works perfectly.   So there are some great things about it.  Also more security from what I understand. 

Yes, I would not tolerate abusive behaviour if I had a forum as well.  Haha that's funny someone tried to call you out for removing an insulting post. I think it's perfectly OK to remove anything you want if it's your site and of course, I also believe that there is a difference between disagreement and trolling, the latter of which is detrimental to free speech.  Interesting meme!  Yes, I am non-violent as well and think it's funny how we accept online rudeness but not physical.  Sadly, kids are the most vulnerable to this online behaviour.  I hope trolling can be stopped without censoring free speech on the net. 

Ah good to know about the LED project; yes, I checked many questions online that were similar too and found that as long as the ground are all connected, it should be fine like you said.

Yeah I'm not sure if the Nano does actually have a pull up resistor.  There doesn't seem to be any info specifically from the Arduino site or from the manual.  I have a bunch of 10k resistors so I will try soldering one between the tactile switch data wire to see if it makes switching between your effects easier.  Overall, I don't think I like the Nano.  It is compact, but not having a pull up resistor as well as having to solder everything kinda sucks.  But of course, it is compact which is why these things were omitted I assume. 

I will test the code once I get back home and let you know.  Again as always, I totally appreciate your help!


   
ReplyQuote
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

No worries - I'm not home either (in Switzerland at the moment). 😉 

Yes, indeed cool that people want to share their work. With quite a lit of tinkering I finally managed to import a vehicle and it looks amazing in Half-Life:Alyx. Woohoo! I tried the decimate tool, but it's not aggressive enough. Example, a car should be converted to maybe 7 cubes.
Trunk, passengers section, engine compartment, and 4 tires. 

Something like this - forgive me for the quick doodle, I know its not the best, but it will give you an idea.
(I do not have access to my files at the moment to post a proper image)

The cubes are places where the player or items cannot go.

To keep this fast and smooth during game play, they prefer a super simple (invisible) colission model. Hope this makes sense 😊 

Nope, you never posted the cabin renderings. Totally OK of course, it can happen to any of us. 😋 

When it comes to Windows vs Mac vs Linux, I'd say Linux is less loaded with bloatware and stuff you really do not use (for your specific purposes).
Windows on the other hand tries to cover everything (I found that even Windows video drivers can become a problem).
I think macOS stays somewhere in the middle by reducing the support of exotic hardware (eg. non-Apple stuff etc).

I really like macOS, but what I hate (and Windows isn't any better on this topic): the constant, and very frustrating changes (for a developer). Like signing an application with a $99/year certificate, or notarizing your applications, and upcoming: build in support for their ARM based CPU's, etc.
Oh well ... the way things are going, I can see there coming an end to me supporting macOS and maybe even Windows in the near future.
We will see how it goes 😉 

Let me know how the code works once you get to it - got to run since they expect my presence 😉 


   
ReplyQuote
(@lakerice)
Eminent Member
Joined: 5 years ago
Posts: 30
 

@hans That's great you were able to get a car to work in Half Life: Alyx!  Can you go inside it?  Hm, I see what you mean regarding the decimate tool and collisions.  I think if you were to use the cube method it probably would work reasonably well.  You can extrude a single cube to fit the shape of the car in a very low poly way.  You can also give it a wireframe texture so that you can still see the car.  Of course you might want more accurate collision detection than what I have done.  I think the cubes around the wheels is a good idea.  I've attached a screenshot:

Damn, I am really bad at attaching links haha...OK here is the link to my Artstation; you can click on the album of cabin renders to see them :)

https://www.artstation.com/lakerice

Yes that makes sense Linux wouldn't have bloatware.  They are interested in the best possible operating system.  I've largely avoided Mac for the price to specs ratio as well as their proprietary hardware, but I know they have a big fan base.  Wow, I didn't even know what a certificate or notarizing for an application is; sounds like they have a way of charging for everything!  I think I will embrace linux fully one day, but it would have to be to the point where I don't have to youtube and research every little thing I want to change, without being a programmer :) Also, they need to make OpenOffice much more user friendly in my opinion.  The word processor still feels like an undeveloped open source project to me.

Unfortunately the code still doesn't decay properly. I tried adding

I tried changing the

if(LEDPosition < NUM_LEDS)

to

if(LEDPosition < NUM_LEDS + MeteorSize)

and

if(LEDPosition < NUM_LEDS + (2*MeteorSize) )

 

But still it just freezes when it gets to the top of the LED strip.  Do you think it could be a hardware issue?  Does it work for you on an Arduino?

Thanks again!

 


   
ReplyQuote
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

Oh I like how you did this with the car. Is there an "easy" shortcut for this?
I'm still fighting with all the options on the right side of Blender - I have to work more in it to get used to it.
I think using the sculpt tools may be easier to make a box around the car?

Yeah, the wheels I did separate. It was a larger military personal truck (since the shape was easiest to experiment with).
I wanted stuff to get under the car and the player to be able to hide between the huge tires.
Worked out pretty good, just wished I would be more skilled at working with Blender. I'll get there 😉 

Entering the car can be done as well. It is a little more complicated since I'd have to implement the car door mechanics and I'm not quite there yet.
There is not real useful manual available online for the Hammer editor, so I rely heavily on youtube videos and such. But as always: those are not always covering exactly what I'm looking for (which makes sense).

Your cabin looks fantastic! Wow! Very impressive and it looks so real. Well done! 👍 

Linux indeed is super solid and clean. As for Mac equipment: yes it is the more expensive class. But ... you really get what you pay for.
If you'd buy the same hardware and build quality from Dell (for example), you'd pay the same kind of money, or even more. Most of my Apple laptops remain very good even after owning them for 7 years. It definitely beats the "plastic" cheaper windows models. 
The only weakness is the GPU Apple uses. OS-wise, macOS is really my OS of choice.
However, for VR and such I really need a better GPU. So I'm debating what to do. Sell my Mac Pro (12 core, 1 Tb SSD, 64 Gb RAMm dual AMD D500 GPU)), and buy a Windows PC or laptop, and maybe install Hackintosh on it? Obviously I'd use my Apple laptops for "real" work haha. It is an option ... we will see how it goes.
I'm not crazy about selling my Mac Pro - I hate having these random people at the door complaining, haggling, etc.

The signing and notarizing is done to make things a little safer. As a user you'd know this is a legit developer.
On that note: Microsoft, as usual, copies (often poorly) whatever Apple is doing. So signing is starting to become more and more critical. However the certificate issues by Apple is $99/year, where as the certificates suitable for Windows applications exceed $250/year. 😞 
It is a pain ... and it is taking away from freeware developers ... I understand why it is needed, but I also do not see why a certificate needs to be this expensive.

Back to the Arduino code: What do you mean with freezing? Maybe I misunderstood what you were asking.
With the "original" code the meteor would potentially go to the end of the strip and not "disappear".
But now I'm thinking this is not what you meant?


   
ReplyQuote
(@lakerice)
Eminent Member
Joined: 5 years ago
Posts: 30
 

@hans Actually, this add on in Blender might work well for you https://www.youtube.com/watch?v=MfWGzbIvS7c it seems free as well (github zip file).  It looks pretty awesome from what I can see. Well, you seem to catch on fast with Blender, so I have no doubt you will get this collision stuff to work well :) Plus there are many Blender VR fans out there doing what you are doing, so I'm confident there will be an add on or tutorial that simplifies the process for collisions.

In terms of the car doors and being accessible inside the vehicle, I think it would be reasonably doable to rig the doors to open and close on a specific point (likely where the 3D cursor is, which you would set manually to be where the door hinges are), or alternatively you could download a fully rigged truck  on Blendswap.  Some of them even have shock absorption for the tires.  Wow this is very exciting!  Can't wait to hear how this works out for you.

Thanks!  The cabin was several months of work as are most of my projects lol.  I was relatively pleased but I felt like I could have done the textures a little better (many were not procedural, and up close it can look pretty synthetic).  Also the lighting, especially in regard to the volumetric "god rays" inside the cabin...I really wanted that eerie dusty look with rays of sun coming through.  But by far, the trees were the biggest memory sucker because in order to get them to look realistic, I had to convert them from curves to meshes and they had to be relatively high poly meshes in order to get the textures to look right.  I mean, they were still only 5 or 6 variations and then spread out with the hair particle system, but even then it was a lot of work to scatter and randomize them.  My BIGGEST hope for anything in Blender is to develop the hair particle system so that nothing collides with each other.  Like if you make a bunch of leaves on something or a bunch of trees, the leaves or trees can still go through each other.  Manually placing each leaf is really unrealistic.  Most of the time, it's use for hair on characters and you won't notice single hairs doing that, but for other way of using hair, it's frustrating.   I think now I'm definitely going to see how possible it is to use this environment entirely in VR :)

True, people do talk about the quality of Apple products.  I guess I've always made do with different laptops but I can understand the reputation...I mean, it can't all be marketing behind the loyal fans.  I have older computers actually...mostly used.  Lenovo y50-70 gaming laptop about 6 year old now...heavy but sturdy.  Works well for relatively fast rendering in Blender, especially if you are not using particles or physics.  Got a used gaming PC with 2 NVIDIA 1050ti GPUs.  Nothing new anymore, but again pretty good for Blender.  But your laptop seems very decent...64 GB RAM!  My desktop only has 16 right now.  Good GPU too.  Yeah I imagine if you try to sell it, you will have way too many people interested haha...

Wow I had no idea you had to use certificates....I'm not surprised Windows charges so much.  Hm, interesting you mention the disincentive for freeware developers.  I wonder if that is a strategy for Windows and Apple to discourage it?

Ohhh yes OK I must have communicated wrong about what I wanted.  I basically wanted the exact same code that the original meteor used, with the flickering dying trail and for the entire thing to go dark at the end and then repeat again.  So exactly the same as your original meteor code, but instead of one colour, it would be a combination of 2 like you made with this code.  Hopefully that makes sense.


   
ReplyQuote
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

Oh cool - that add-on may indeed do the trick. When I return from my trip I'll go give that a try for sure. 👍 

As for getting inside the car: I think the rigging in Hammer may work a little bit different than the rigging in Blender. I still have to learn more about that though. It is always very cool and fun to explore (and satisfying when you get it to work).

As for Apple products, I guess if one handles their equipment correctly, it doesn't matter much what the quality is. Though when I see my nephews handle their laptops, I'm honestly not surprised the laptops live for about 2 maybe 3 years 🤪 . I always am careful with my gear so a cheap laptop would last long with me as well. Although I did notice that older laptops were build better as well.

The 64Gb RAM is my Mac Pro (the Trashcan model - which I got cheap), it has great GPU's just totally useless for what I want to use them for and you cannot upgrade them to anything more recent (there are only 3 GPU models you can use, AMD D300, D500 and D700). I did consider getting an external GPU (eGPU) but that made me think that just building one from scratch may be a little bit more expensive, but not all that much.

You make a good point, maybe the certificates are used to have a secondary agenda 🤔 
I just do not think it is a good development - maybe they are steering more towards total control?
It used to be that the availability of free tools could completely change the popularity of an OS ...

Ah OK, I had to change the meteor code because of the mechanics to catch a button press.
I am surprised though that they example I gave you here didn't work. You said it froze at the end?
So the meteor moves, and has a trail, but at the end it just stood there (this is what I understood).
So where does it freeze?

(sorry for the late reply, I'm on "vacation" in Switzerland)


   
ReplyQuote
(@lakerice)
Eminent Member
Joined: 5 years ago
Posts: 30
 

@hans Cool hopefully the add on helps!  Ah I see (regarding Hammer).  Well it might be easier to use an add on too if you find it difficult in Hammer.   This one is a paid add on, but Blender might have a decent free one.   https://blendermarket.com/products/car-rig-pro-blender-kit

Of course, if you want a fun experience right away there might also be fully rigged cars on Blendswap :)

Haha yes, I don't know may laptops that can take a massive beating :) I have an Acer Aspire from like 5 years ago but it's metal and glass and still quite light.  Heavier than a Macbook though.  Oh nice, I didn't know you could use separate GPUs...I remember looking into that years ago and didn't find anything but maybe now that's changed.  Might also be cheaper to buy a used gaming laptop too.

Yes, from my limited knowledge of certificates, it does sound like they are trying to control development.  Of course this wouldn't be far fetched to assume from Microsoft, considering their monopoly for the the past several decades.  Apple is now the major contender and wouldn't surprise me either. 

Yep you are correct in your description of the code.  I am not home right now but I should have sent you a picture.  Like you said, it just stops at the  end.  So it goes up the LED strip, but it doesn't decay and as soon as the pattern reaches the end of the strip the entire pattern literally just pauses. So imagine it the way it has always worked, but instead of that nice decay and twinkle of the trail, it just moves along the strip until it hits the end and then stays stuck. 

 

 


   
ReplyQuote
 Hans
(@hans)
Famed Member Admin
Joined: 12 years ago
Posts: 2859
Topic starter  

For now I'll keep the rigging on the back burner, until I have a good workflow (for myself) to convert a model to Hammer, and have proper collision in Hammer. I understand the basics of that part (model + collision). When I get back from my trip, I'll try the add-on you suggested and see how smooth that will work for me.

Next I'll try to understand the rigging mechanics in Hammer and see how it compares to how it works in Blender (I've played with rigging before, it's not that complicated once you have done it once or twice 😜 ).

I do suspect however that it works a little different in Hammer. I suspect I will need one or the other script (eg. player grabs the door knob, and pulls, so the door opens). There are a few example models in Hammer, which I could study ad see how things work. The documentation for Hammer is still growing but still very limited. I have had to re-learn a few things already (doing it wrong, learning from one or the other YouTube video that it "should" be done differently, to then find out that it has to be done even differently - different roads lead to Rome I guess 😉 )

Most of the online 3D models also do not seem to have an interior (like the little tank I tried), which kind a sucks when you make the windows actual transparent glass, let alone daring to open a door hahaha. It remains a fun little experience though - and I enjoy it. I guess some people like puzzles or Sudoku. I like these kind of things a my kind of "puzzle".

I'm looking at gaming laptops as well - they seem to have come done quite a bit. But ... then there is the CPU and GPU mayhem and confusion haha. Especially nVidia makes quite a mess when it comes to that. For example (from what I have been reading): the nVidia 2060 desktop version, will beat the nVidia 2070 QMax with ease. And that is a little concerning to me, since I want to use it for VR (pushing the GPU to it's limits), and I'd rather not buy something that is going to be outdated within the next few months.

Did you see nVidia is launching their 3000-series in September? Not sure about the pricing yet, and a significant speed boost is promised. Maybe it will push the price of the 2080 down. Or ... AMD's upcoming GPU may perform very good and be more attractive when it comes to pricing.

And that was just the GPU hahah ... the AMD CPU's are said to run circles around Intel, and even the upcoming Intel CPU's can barely keep up if you're lucky.

Argh ... problems we have have 😜 

I'm still traveling (until next Monday) so I can't test the code. The last code I posted though is what I made specifically for your question, and I ran it on my ESP8266 just to make sure it worked. I'll do some more tinkering when I get back home ...

Greeting from Switzerland! (still can't really travel home [US] and still looking for a job - bleh)


   
ReplyQuote
Page 2 / 4
Share: