• Advertisement
Sign in to follow this  

Unreal Engine 3: Code

This topic is 2031 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

So I am learning C++ and I heard that you need C++ for most game developments. But when I went to go and watch a tutorial on the UDK I saw a 3D modeling program. I am aware of kismet but how do I implement C++ code to use the UDK. Or what language should I use I don't want to use actionscript because I cannot handle memory management like C++ can. Any links or other forums for the answer is helpful.

Thanks,
-Noob

Share this post


Link to post
Share on other sites
Advertisement
The UDK uses Kismet and UnrealScript.
Only the professional version of Unreal Engine (not the free UDK) allows you to use C++, AFAIK.

If you're new, then you shouldn't use C++ anyway -- it's an advanced, low-level, systems programmer's language, not a beginners game programming language. Edited by Hodgman

Share this post


Link to post
Share on other sites
[quote name='Hodgman' timestamp='1340675255' post='4952861']
The UDK uses Kismet and UnrealScript.
Only the professional version of Unreal Engine (not the free UDK) allows you to use C++, AFAIK.

If you're new, then you shouldn't use C++ anyway -- it's an advanced, low-level, systems programmer's language, not a beginners game programming language.
[/quote]
Then in your opinion are there any limitations in unrealscript versus cpp?

Share this post


Link to post
Share on other sites
[quote name='TheSyfrX' timestamp='1340675496' post='4952863']
Then in your opinion are there any limitations in unrealscript versus cpp?
[/quote]
Unrealscript can only be used with Unreal Engine / UDK and "only" lets you control the unreal engine.

C++ can be used for anything(almost) but supports almost nothing. it is great for building new systems but not really a nice language to use for controlling existing systems. (Which is why so many games these days use higher level scripting languages(unrealscript, lua, python, etc) for the game logic)

Share this post


Link to post
Share on other sites
UnrealScript is meant for use with unreal engine only and is a highly abstracted scripting language that allows you to focus on writing gameplay without dealing with advanced programming concepts. Performance wise, its much slower than C++, as it uses a middle-ware interpreter to execute. However, for "almost" all gameplay programming needs in UDK, it should suffice. Infact, even Epic suggests to code gameplay with UnrealScript and not C++, unless you are working on really performance driven engine code.

Hope this helps.

Share this post


Link to post
Share on other sites
[quote name='Hodgman' timestamp='1340675255' post='4952861']
Only the professional version of Unreal Engine (not the free UDK) allows you to use C++, AFAIK.
[/quote]

Most people don't know this but you can use C++ libraries with UDK by using the "DLLBind" feature:
[url="http://udn.epicgames.com/Three/DLLBind.html"]http://udn.epicgames...ee/DLLBind.html[/url]


In fact one clever guy figured out how to trick DLLBind into calling into C# libraries yet this is not officially supported.

[quote name='Marvel Magnum' timestamp='1340692173' post='4952922']
UnrealScript is meant for use with unreal engine only and is a highly abstracted scripting language that allows you to focus on writing gameplay without dealing with advanced programming concepts. Performance wise, its much slower than C++, as it uses a middle-ware interpreter to execute. However, for "almost" all gameplay programming needs in UDK, it should suffice. Infact, even Epic suggests to code gameplay with UnrealScript and not C++, unless you are working on really performance driven engine code.

Hope this helps.
[/quote]

Partially true, yes UnrealScript runs 20X slower than C++[1] and it is highly abstracted. But you can do a lot more than basic gameplay scripting with it. The networking component of the engine is very complex and you can even use it to implement web servers. Also a lot of the classes you deal with in UnrealScript are extended directly from C++ classes so most of the "performance critical" code that you would use (vector ops, math functions) have UnrealScript functions , so you wont be needing to really go into C++ at all.

[1] Yes that figure is quoted from Unreal Developer's Network : [url="http://udn.epicgames.com/Three/UnrealScriptFoundations.html#UnrealScript%20Programming%20Strategy"]http://udn.epicgames...amming Strategy[/url]

EDIT sorry for my poor grammar, I was drunk. Edited by M6dEEp

Share this post


Link to post
Share on other sites
UDK is not free? Hence why not use OGRE etc.? Maybe have a look at gamekit?

I know c++ and Blender, so I'll go with Ogre unless someone has good arguments against.

Share this post


Link to post
Share on other sites
[quote name='mike4' timestamp='1340778121' post='4953228']
UDK is not free? Hence why not use OGRE etc.? Maybe have a look at gamekit?

I know c++ and Blender, so I'll go with Ogre unless someone has good arguments against.
[/quote]
UDK is free and if you want to go commercial it is ~15 times cheaper than unity (99 USD for license with UDK opposed to 1500 for Unity Pro). UDK is VERY free and everything shipped with it is 100% AAA and tested time and time again to be the best out there. You don't win best engine of the year several times in a row for no reason.

Also it is very interesting to see so little knowledge of UDK on this site.. maybe I should do some posts about it (or maybe I'm just in the wrong forum)?

Share this post


Link to post
Share on other sites
[quote name='M6dEEp' timestamp='1340761152' post='4953196']
[quote name='Hodgman' timestamp='1340675255' post='4952861']
Only the professional version of Unreal Engine (not the free UDK) allows you to use C++, AFAIK.
[/quote]

Most people don't know this but you can use C++ libraries with UDK by using the "DLLBind" feature:
[url="http://udn.epicgames.com/Three/DLLBind.html"]http://udn.epicgames...ee/DLLBind.html[/url]


In fact one clever guy figured out how to trick DLLBind into calling into C# libraries yet this is not officially supported.
[/quote]

Wait for UDK 4 for and we will only have kismet and C++ code they have gotten rid of UnrealScript [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img], also dynamic C++ compiling on the fly. See last 2 minutes of video.
[media]http://www.youtube.com/watch?v=MOvfn1p92_8&feature=plcp[/media] Edited by NightCreature83

Share this post


Link to post
Share on other sites
Yes looks good, but unless I could export to Linux, I won't even bother to look at that. Edited by mike4

Share this post


Link to post
Share on other sites
[quote name='NightCreature83' timestamp='1340783559' post='4953237']
Wait for UDK 4 for and we will only have kismet and C++ code they have gotten rid of UnrealScript [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img], also dynamic C++ compiling on the fly. See last 2 minutes of video.
[media]http://www.youtube.com/watch?v=MOvfn1p92_8&feature=plcp[/media]
[/quote]


[url="http://forums.epicgames.com/threads/915696-UDK-In-Unreal-Engine-4/page2"]http://forums.epicgames.com/threads/915696-UDK-In-Unreal-Engine-4/page2[/url]


That is so weird... Edited by M6dEEp

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement