- Unreal Development Kit Game Programming with UnrealScript:Beginner's Guide
- Rachel Cordone
- 370字
- 2021-08-27 11:59:10
Time for action – All classes are created equally
What does this mean for us in practical terms? Let's take a look at our friend AwesomeActor to see if he can help demonstrate.
- Write the following code in our
AwesomeActor
class:class AwesomeActor extends Actor placeable; var() int MyInt; function PostBeginPlay() { `log(self @ MyInt); } defaultproperties { MyInt=4 Begin Object Class=SpriteComponent Name=Sprite Sprite=Texture2D'EditorResources.S_NavP' HiddenGame=True End Object Components.Add(Sprite) }
We'll use an editable
MyInt
variable to see class behavior. - Compile the class and open up the editor. Next to our existing
AwesomeActor
, place another one. - Save the map and run it from the editor, then close out the game and editor.
- Now let's take a look at our
Launch2.log
file:[0010.61] ScriptLog: AwesomeActor_0 4 [0010.61] ScriptLog: AwesomeActor_1 4
We can see that class instances are created with the class name and then a number added to the end. Remembering that in programming everything starts with 0, in our case we have
AwesomeActor_0
andAwesomeActor_1
. Since we haven't changed anything about them yet, both have the default value ofMyInt
, 4. - How do we know which one's which? A handy bar at the bottom of the editor can help us. Reopen the editor and click on one of the AwesomeActors to select it. At the bottom of the editor we can see that instance's name.
- From our log we can see that each instance of
AwesomeActor
has been created in the same manner. Now let's change one of them. Double-click on one to open up its properties, and changeMyInt
to23
. - Save the map and run the game, then exit and take a look at
Launch2.log
.[0007.76] ScriptLog: AwesomeActor_0 4 [0007.76] ScriptLog: AwesomeActor_1 23
What just happened?
We can see that even though both instances were created from the same class blueprint, we can change them after they have been created. This is an important principle of object-oriented programming. Having classes lets us quickly create objects of the same type without having to have a separate file or code for each instance we're going to use. An object is created from the class with all of that class' properties, and then we can change them after they have been created.
- 筆記本電腦使用、維護與故障排除實戰
- Learning Cocos2d-x Game Development
- 電腦常見問題與故障排除
- 電腦組裝與維修從入門到精通(第2版)
- Effective STL中文版:50條有效使用STL的經驗(雙色)
- BeagleBone By Example
- 精選單片機設計與制作30例(第2版)
- 電腦常見故障現場處理
- 電腦組裝、維護、維修全能一本通(全彩版)
- Camtasia Studio 8:Advanced Editing and Publishing Techniques
- 筆記本電腦維修不是事兒(第2版)
- Learning Game Physics with Bullet Physics and OpenGL
- 筆記本電腦使用、維護與故障排除從入門到精通(第5版)
- 筆記本電腦應用技巧
- Hands-On Deep Learning for Images with TensorFlow