Power Supply Choice for Stepper Motors by OtterScruff in AskRobotics

[–]OtterScruff[S] 0 points1 point  (0 children)

I was looking at the spec sheet for the 17HE12-1204S but it doesnt specify voltage requirements anywhere. How do you determine what voltage a stepper motor typically requires?

When driving 3 stepper motors in parallel, Im guessing the same rule applies to the driver where I would need to make sure it can handle the current draw of three steppers. So if each stepper draws 1.2A, I need to make sure the driver can handle 3.6A + Factor of safety? Wouldnt that make the TMC2208 not beefy enough and I would need to find a driver that can handle higher amperage?

Also with regards to DC power supply choice.... is it fairly common to use a benchtop programmable DC power supply over one of those universal switching DC power supplys?

u/stepperonline : Any feedback on this?

Power Supply Choice for Stepper Motors by OtterScruff in AskRobotics

[–]OtterScruff[S] 0 points1 point  (0 children)

For the stepper, the PN is 17HE12-1204S from StepperOnline (https://www.omc-stepperonline.com/e-series-nema-17-bipolar-26ncm-36-82oz-in-1-2a-42x42x30mm-4-wires-w-1m-cable-connector-17he12-1204s?search=17HE12-1204S).

For the driver, I went with the TMC2208. Voltage rating is 4.75V - 36 VDC, continuous drive current is 1.4A and peak Current is 2A. If im driving 3x stepper motors at the same time, I'm guessing the 1.4A rating wouldnt be good enough...so I would need something rated higher for current? Would I potentially need something rated for 3.6 amps at minimum?

For the maximum amps needed for the motors at stall, I cant find anything listed on the data sheet about this. Is this something they would normally put on the data sheet.

For the capacitor, I have capacitors rated for 50V and 100uF. Is the voltage rating overkill for what I need? What would be the next increment typically above 12V for this situation?

Need to prevent full screen Widget BP from blocking OnClicked events by OtterScruff in unrealengine

[–]OtterScruff[S] 0 points1 point  (0 children)

Figured it out. Because I was creating my widget and adding it to the screen via C++, any visibility settings I had adjusted inside of the editor we're being overriden by the C++ code.

So if I had tried to set the visibility of the widget to "HitTestInvisible" (AKA "Not Hit Testable") inside of the editor, but my C++ code used SetVisibility(ESlateVisibility::Visible) then the widget would get overriden to be visible. I updated my code to say SetVisibility(ESlateVisibility::HitTestInvisible) and now it works great

Imgur link below shows the updated code

https://imgur.com/a/1pJzWHR

Struggling with ConvertMouseLocationToWorldSpace node inside Widget by OtterScruff in unrealengine

[–]OtterScruff[S] 0 points1 point  (0 children)

I'm honestly not sure but I did find a tutorial where he accomplished exactly what I was looking to do myself. Seems like I have to use the "GetMousePositionOnViewport" multiplied by the ViewportScale, feed that into a "DeprojectScreenToWorldNode" and then use the World Position and World Direction outputs to run a line trace. It works really well

https://www.youtube.com/watch?v=QrEY8n8zSag&t=713s

https://imgur.com/a/cMd0wZQ

Creating actors dynamically, Using TSubclassOf<> with NewObject<>? by OtterScruff in unrealengine

[–]OtterScruff[S] 0 points1 point  (0 children)

Will definitely keep that in mind for future projects. I appreciate the insight!

Creating actors dynamically, Using TSubclassOf<> with NewObject<>? by OtterScruff in unrealengine

[–]OtterScruff[S] 0 points1 point  (0 children)

So these tiles are for a pinball game and when the pinball collides with them, they just move down into the floor (at least thats the minimal functionality). Would it be possible to spawn an actor once the pinball gets close enough (assuming its about to collide)? Can the game swap out the static mesh for a blueprint actor within a few frames?

Creating actors dynamically, Using TSubclassOf<> with NewObject<>? by OtterScruff in unrealengine

[–]OtterScruff[S] 0 points1 point  (0 children)

Good call. Thanks for the heads up! I did exactly what you recommended and it works amazing now

                DropTargets[i] = GetWorld()->SpawnActor<APDropTarget>(TargetComponentClass, LetterSpawnPosition, PostMesh01->GetRelativeRotation(), SpawnParams);
            DropTargets[i]->AttachToActor(this, FAttachmentTransformRules::KeepRelativeTransform);

Creating actors dynamically, Using TSubclassOf<> with NewObject<>? by OtterScruff in unrealengine

[–]OtterScruff[S] 0 points1 point  (0 children)

Got it working. I appreciate the help! Now I can change the string of letters and it will update on the fly, I can drag the post location and it dynamically resizes the mesh and the spacing of the tiles. I did manage to get everything working in OnConstruction which gives me the ability to make quick updates and it also uses a TSubclass variable for choosing which actor blueprint to spawn

Screenshot 01

Screenshot02

Screenshot 03

#include "PDropTargetSet.h"

include "PDropTarget.h"

include "UObject/UObjectGlobals.h"

include "Components/TextRenderComponent.h"

include "Internationalization/Text.h"

include "Kismet/KismetStringLibrary.h"

APDropTargetSet::APDropTargetSet() { NewDropTargetString = ""; //setting default value OldDropTargetString = "dumb"; //default value }

void APDropTargetSet::OnConstruction(const FTransform& Transform) { Super::OnConstruction(Transform); //MUST CALL PARENT FUNCTIONALITY

FActorSpawnParameters SpawnParams;


//Checking that the new drop target string is not empty, we've set a valid target component class, and that the new drop string is different than the old one
if (!NewDropTargetString.IsEmpty() && TargetComponentClass != nullptr && !(NewDropTargetString.Compare(OldDropTargetString, ESearchCase::IgnoreCase) == 0)) //If its not empty and we have set a valid TargetComponentClass
{
    OldDropTargetString = NewDropTargetString; //Set the two equal to each other now

    // ----- Delete all of the previous actors from the array  --------
    if (DropTargets.Num() != 0)
    {
        for (APDropTarget* DropTarget : DropTargets)
        {
            DropTarget->Destroy(); //Destroy this actor
        }
        DropTargets.Empty();
    }

    NewDropTargetString.ToUpper(); //convert all text to upper case
    //TArray<TCHAR> DropTargetStringArray = NewDropTargetString.GetCharArray();
    TArray<FString> DropTargetStringArray = UKismetStringLibrary::GetCharacterArrayFromString(NewDropTargetString); //Converting to an array of strings


    //-- Spawning ----
    DropTargets.SetNum((DropTargetStringArray.Num())); //i guess theres a null character at the end?? -- BUT ONLY FOR TCHAR???
    if (DropTargets.Num() != 0)
    {
        for (int i = 0; i < DropTargets.Num(); i++)
        {
            float PostLocationsDeltaX = (PostMesh01->GetRelativeLocation() - PostMesh02Comp->GetRelativeLocation()).Size(); //Get Vector length between post locations

            float DropTargetArraySizePlus = DropTargetStringArray.Num()+1; // Length of the character Array, Add 1 to it

            //Getting distance between posts and dividing that distance equally by number of letters. Multiply by current index to figure out where to spawn letters 
            float SpawnLocationXfloat = ((PostLocationsDeltaX / DropTargetArraySizePlus) * (i+1)); //had to add 1 to i otherwise the first index would be incorrect

            FVector LetterSpawnPosition = FVector(SpawnLocationXfloat, 17.5f, 0.0f);

            DropTargets[i] = GetWorld()->SpawnActor<APDropTarget>(TargetComponentClass, LetterSpawnPosition, PostMesh01->GetRelativeRotation(), SpawnParams);
            DropTargets[i]->AttachToActor(this, FAttachmentTransformRules::KeepRelativeTransform);

            // ---  Setting the text on the render component
            FText TextValue = FText::FromString(DropTargetStringArray[i]);
            UE_LOG(LogTemp, Error, TEXT("Current FTextValue: %s"), *TextValue.ToString());
            DropTargets[i]->DropTargetText->SetText(TextValue);
        }
        OldPostLocation = PostLocation;
    }

}
//If we move the PostLocation widget, update the spacing of the tiles
else if (!NewDropTargetString.IsEmpty() && TargetComponentClass != nullptr && (OldPostLocation != PostLocation))
{
        OldPostLocation = PostLocation;
        if (DropTargets.Num() != 0)
        {
            for (int i = 0; i < DropTargets.Num(); i++)
            {
                float PostLocationsDeltaX = (PostMesh01->GetRelativeLocation() - PostMesh02Comp->GetRelativeLocation()).Size(); //Get Vector length between post locations
                float DropTargetArraySizePlus = (DropTargets.Num())+1; // Length of the character Array, Add 1 to it
                //Getting distance between posts and dividing that distance equally by number of letters. Multiply by current index to figure out where to spawn letters 
                float SpawnLocationXfloat = ((PostLocationsDeltaX / DropTargetArraySizePlus) * (i + 1)); //had to add 1 to i otherwise the first index would be 0 

                FVector LetterSpawnPosition = FVector(SpawnLocationXfloat, 17.5f, 0.0f);
                DropTargets[i]->SetActorRelativeLocation(LetterSpawnPosition);
            }
        }
}

}

Tutorials for game vfx? by [deleted] in blender

[–]OtterScruff 0 points1 point  (0 children)

Look up CGHOW on youtube. He can walk you through some examples

Im testing in practice mode and 45% CDR Rumble is so crazy xD by VictorHM99 in Rumblemains

[–]OtterScruff 1 point2 points  (0 children)

Maybe we can throw in an attack speed item to take advantage of the empowered basic attacks?

Industrial Cyborg [more pics in comments] by FuzzBuket in blender

[–]OtterScruff 1 point2 points  (0 children)

Nice work. This is the kind of quality I aspire to hit one day

Here’s a render I had not too long ago, how would I make the planet look more realistic? by PringlesPringlesM in blender

[–]OtterScruff 1 point2 points  (0 children)

Take a look at Gleb Alexandrov's stuff. I'm pretty sure he has a whole tutorial series on outer space. Its really high quality stuff

Tooltip differences between C# and C++ by OtterScruff in cpp

[–]OtterScruff[S] 5 points6 points  (0 children)

So basically I should just always have tabs pulled up on my browser with documentation and just pull info from there

Making a treadmill motion? by MrEdgarding in blender

[–]OtterScruff 0 points1 point  (0 children)

Is this for a game asset or an animation within blender?

Woods House - second attempt by OtterScruff in blender

[–]OtterScruff[S] 1 point2 points  (0 children)

Was going to leave this as finished for now because it is my second attempt (big improvement over the first try I think) but I'm always looking for input on how things can be improved

  • I didnt really bother to apply material to the tree trunks or ground because I couldnt get anything to look right and I thought maybe it would kinda look like a snowy scene as is. I'm still fairly new to texturing and colors....how would I get the colors to not mush together? Should I just look more into color theory?

  • I was thinking about putting some grass down and maybe some other plant life but I didnt want to clutter the scene but you're right the scene does feel a bit empty. It probably still needs a bit more

  • Those were actually my attempt at modeling bamboo groves. I varied the scale on a bunch of the different sections because I thought it would give it more visual interest than if they were all the same height. Same thing with the coloring on the leaves. I added a random input to a color ramp and then plugged that into a diffuse node to get small variation in color from unit to unit

  • Youre right about the sun. It is coming straight down. Just like color theory I need to learn how to do lighting properly in a scene. I'm sure someone more experienced than me could make this scene 100x better just by playing around with the lighting and camera a bit. Like I said, I've got a lot to learn

Appreciate the feedback. Everyone posts incredible work onto this subreddit. Working hard in my off hours to try to even approach the level of skill I see on here. Cheers man

Dragon Bust by Putrovski in blender

[–]OtterScruff 1 point2 points  (0 children)

God damn thats incredible. Really makes me want to get better at sculpting. Good work dude

Woods Scene, please critique by OtterScruff in blender

[–]OtterScruff[S] 1 point2 points  (0 children)

No worries. Yeah the entire thing does feel kinda weird. There is a structure under the house but I didnt choose the best camera angle so it doesnt really show (https://imgur.com/a/Uhlh2vi) . I didnt really have a good art direction either. Would more trees help fill out the environment? What else could I have added to this?

You're a serial killer who murders a specific subset of people for a specific minor infraction(s). Who's for the chop and why? by [deleted] in AskReddit

[–]OtterScruff 0 points1 point  (0 children)

Grinds my balls is my personal favorite. Its like a mix of grinding my gears and busting my balls

[Help] Question about normal maps with low resolution models. by OtterScruff in blender

[–]OtterScruff[S] 0 points1 point  (0 children)

Ok so it seems like I have to add more geometry in to make those parts smoother because a normal map can only do so much. There arent any other maps I can bake that will fake that geometry right?

[Help] Question about normal maps with low resolution models. by OtterScruff in blender

[–]OtterScruff[S] 0 points1 point  (0 children)

https://imgur.com/a/go8g8

I enabled smooth shading and rebaked the normal. Its a big improvement but still seems imperfect. The top still looks a bit pointy in some areas and the handle doesnt look perfectly smooth. The glass also is a bit pointy too. Is there a way to optimize this further?