1danielcoelho / 1danielcoelho.github.io

My personal page and blog. Check the about.md page for more details.
https://1danielcoelho.github.io/
MIT License
3 stars 0 forks source link

unreal-engine-basics-base-classes/ #4

Open utterances-bot opened 2 years ago

utterances-bot commented 2 years ago

Unreal Engine basics and base classes · Daniel Coelho's Blog

How UObject, UClass, UBlueprint, UBlueprintGeneratedClass and other concepts like the Class Default Object (CDO) all interact. Crash course on UE4.

https://1danielcoelho.github.io/unreal-engine-basics-base-classes/

IkoLogs commented 2 years ago

Thank you very much for this detailed explanation. Epic could totally do with adding this post to their documents.

wonAdam commented 2 years ago

OMG.. this is a amazing post... I wish more posts like this out there. Thx for sharing your valuable research :)

mcteapot commented 2 years ago

Neo: “I know kung-fu.” Morpheus: “Show me.”

FredMurphy commented 2 years ago

Another "thank you" from me. This clearly explains some quite important concepts that I haven't seen anywhere else.

liubai01 commented 1 year ago

That's really amazing overview of UClass. Brief and elegant.

pmoriarty commented 1 year ago

This is really good. If only the official docs were even half as good as this.

Thanks!

Lywx commented 1 year ago

Thanks for posting about this, code about blueprint is complex as hell to me. Posts like this help me clear things up!

PeloGetan commented 1 year ago

Thank you! Very useful post!

oopsplus commented 1 year ago

Thanks, save me lots of time on Uobject and CDO~

lordliquid commented 1 year ago

It's so rare, from what I can tell, that people spend the time to share what they have learned and at this caliber. I am forever grateful for finding this post and your efforts in sharing this information. After reading and understanding the information, I felt the need to share my gratitude. That said, I plan to browse the blog for more guidance on this journey to learn the framework / foundation of Unreal Engine.

One step closer to reaching my dream in landing that career in game development. Thank you so much!

adam-ocheri commented 1 year ago

WOW!!! Amazing breakdown Daniel, Thank you so much. I have followed and recreated everything you did here, and it made some of the voodoo the engine provides a lot clearer! I am grateful for your effort to write this post - so much quality info about the core of UE like this is rare.

By the way, I found out that you do can change the CDO of a C++ base class, and not just the derived BP class - simply adding 'true' for "bCopyTransientsFromBassClass" (the next parameter in the 'NewObject<>()' function, default is false):

UMyObject* BaseAfter = NewObject( this, BaseClass, NAME_None, RF_NoFlags, BaseCDO, true);

I can't wait to see more articles like this from you! You sir, are a wizard.

adam-ocheri commented 1 year ago

For to those who bravely survived until the end - you do can change the CDO of a C++ base class - simply add 'true' for "bCopyTransientsFromBassClass" when you create a new object:

UMyObject* BaseAfter = NewObject( this, BaseClass, NAME_None, RF_NoFlags, BaseCDO, true);

kaijurgeit commented 1 year ago

Thank you!

SunXLei commented 11 months ago

Nice post!