I am having problems with where exactly to put my package that I am saving out of the generic browser. I know that the actual level goes in MyDocuments/MyGames/UnrealTournament3/UTGame/Unpublished/CookedPC/CustomMaps (DM-GameName.ut3)
Where should I put the custom content package saved from the Generic Browser? In that same folder with the level save? calling it DM-GameName_Content.upk (DM - For a Death Match)?
I'm trying to narrow down why it isn't compiling and now there are many variables. I'm going to try ripping the music out of my level and see if that is the problem.
Any advise is seriously appriciated.
You can check out the file at www.randyid.com
You shouldn't use an external package for any custom map content. There are many reasons why this is not recommended. All custom content should be imported directly into the map itself, by specifying the map name as the Package during import of textures etc. Custom content that is in the map file is always saved when you save the map, and is easily published within the map file.
The only time external packages would normally be used is for entire game mods.
You also won't want to prefix your external package with a map game type, it may be confusing to some.
However, all of that being said.
Your external package should be in the same Unpublished\CookedPC\CustomMaps folder as the map file. It will get cooked along with the map to the Published\CookedPC\CustomMaps folder. If a cooked version of the package already exists there, it will be replaced if it is older.
Using the FixupRedirects commandlet
When you Rename an object in the Editor it creates a 'Redirector' that points from the old object location to the new location. This is so that other existing content (maps and packages) can still locate the object at its original location forwarded through the redirector.
As an example, if we had a Texture located in a package called MyPackage.upk, in a Group called Textures, with the name of TX_RustMetal_D, it's full path would be:
MyPackage.Textures.TX_RustMetal_D
Any time this texture is used in any Material, this full path to the texture is specified in the Texture Sample's Texture property, such as Texture2D'MyPackage.Textures.TX_RustMetal_D'.
Renaming the TX_RustMetal_D texture to a new location such as DM-MyMap.Textures.TX_RustMetal_D does not fully delete the texture at the original path but instead it leaves behind a redirector at MyPackage.Textures.TX_RustMetal_D that simply points to DM-MyMap.Textures.TX_RustMetal_D.
So any other map or package that was referencing MyPackage.Textures.TX_RustMetal_D will still be referencing that same path. The engine just follows through the redirector located there to the new path at DM-MyMap.Textures.TX_RustMetal_D.
If you move objects from an external package to the map file itself, redirectors may be created which will still be referencing the external package. So even though the objects are seen in the map file in the Generic browser, they are still using redirectors to the original external package.
To fix this and remove the redirectors, the commandlet 'FixupRedirects' must be used.
The 'FixupRedirects' commandlet scans through all of the game packages and attempts to fix up or delete redirects that are no longer required.
There are a few issues with using this command in the current engine builds.
Note: You cannot have a redirector and a new object of the same name, so even if you Rename an object, you cannot create a new object of that original name.
Note: There appears to be some issues and discrepancies with this commandlet and the information on UDN, so if you do not want to have to go through all of the work outlined below, then simply re-import every object that you want directly into the map file itself instead of using any external packages.
Incorrect UDN Information
The UDN incorrectly lists the commandlet information options as of build 3543.
It lists the commandlet sytax as "gamename.exe fixupredirects <package.ext>" which is incorrect.
The optional package to fix is not supported or completed.
Getting Commandlet Help
To get help information on any commandlet, at a command prompt type "ut3.exe help <commandlet>".
For example "ut3.exe help fixupredirects" will display:
Name: Editor.FixupRedirects
Description: @todo
Usage: gamename.exe FixupRedirects
Options:
Getting FixupRedirects to work with UT3
There are some issues with getting the fixupredirects commandlet to work with UT3.
1. FixupRedirects does not scan the My Documents\My Games folders, which is where the custom maps are normally located. You will instead get red text errors stating that the map or package files that are in the My Documents folder are not found.
To get the FixupRedirects to actually scan your custom map or package, it will have to be moved into the actual installed game folder instead of My Documents.
Create a folder called "CustomMaps" under the C:\ <install path> \Unreal Tournament 3\UTGame\CookedPC folder, and copy your map and or packages to this location.
After the FixupRedirects has completed, the repaired packages should be found in the My Documents\...\Published\...\CustomMaps folder. And the original unchanged packages remain in the install path location you copied it to above. You will have to copy your map or package back to the My Documents\...\Unpublished\...CustomMaps folder to continue working or to cook it. I recommend keeping your original uncleaned packages until you are sure that the process completed successfully.
Note that any other custom content that you have in the My Documents\...\CustomMaps folder will still show as red text errors when running the FixupRedirects commandlet. These can be ignored since we are not concerned with fixing those files.
2. Since the optional package name to fixup is not currently supported, FixupRedirects will scan through every package in the Unreal Tournament 3 folders. This means all stock maps and packages will be scanned.
In order to prevent any issues, it is wise to go through all of the folders in the C:\ <install path> \Unreal Tournament 3\UTGame\CookedPC folder and set all of the .upk files to ReadOnly. This includes all of the files in all of the folders such as Characters, CTF_Flags, Effects, Environments, ... etc.
This will prevent the FixupRedirects commandlet from accidentally modifying any of the stock game packages.
3. The Bonus Pack 1 content has redirection and package errors. This will cause the fixupredirects commandlet to display a massive pile of redirect issues and may result in an application failure running the commandlet.
Create a temporary folder on your hard drive, such as C:\Temp\UT3\Maps\.
Move all of the files for C:\ <install path> \Unreal Tournament 3\UTGame\CookedPC\Maps\CTF-FacingWorlds*.* to the temporary folder.
Move all of the files for C:\ <install path> \Unreal Tournament 3\UTGame\CookedPC\Maps\CTF-SearchLight*.* to the temporary folder.
Create a temporary folder on your hard drive, such as C:\Temp\UT3\Packages\.
Move the following two files ASC_Face.upk and Envy_DLC_Effects.upk located in C:\ <install path> \Unreal Tournament 3\UTGame\CookedPC\Packages\ to the temporary folder.
These BonusPack1 maps and packages will have to be moved back to their original folders after you have successfully completed work with the FixupRedirects commandlet.
Running the Commandlet
After you have successfully moved your map or package to the <install path>\CustomMaps folder, set all of the UT3 packages to ReadOnly, and removed the BonusPack1 bad files, you can now run the FixupRedirects commandlet.
Start a command prompt, navigate to the C:\ <install path> \Unreal Tournament 3\Binaries\ folder and type in:
ut3.exe fixupredirects
After a few seconds a dialog window for the application will pop up. It will contains a bunch of status information on all of the packages that it is checking for redirects.
If your map or package is highlighted in green or yellow text, there will be various redirects to be fixed up.
If your map or package is displayed in standard white text, there are no redirects to be fixed.
When the commandlet has completed scanning and fixing up redirectors, it will display any success or failure information.
The repaired packages, if there were any, should have been placed in the My Documents\...\Published\...CustomMaps folder.
Be sure to keep your original packages that you copied to the <install path>\CustomMaps folder in case there were any problems in the fixup.
Last edited by DGUnreal; 06-25-2008 at 02:06 PM.
I would like to point out that I have a Shader Model 2 video card, an ATI X850XL, and although I may be missing some effects, the game runs flawlessly for me, and the editor as well - except that much of the text in the editor will occasionally disappear for no obvious reason whatsoever.
Yes, the game itself supports down to the ATI 9000 series, but the editor requires a much higher system level. With SM2 cards, depending on the actual card, you will lose various bits of the editor and various sections of functionality.
It is best to do level design with a current card since you will not be able to see all of the advanced features and effects, so you are essentially mapping blind.
Nice DG, thx for the Preview Screenshot Tutorial.
This thread is very useful for new comers.
Ok, so i should have read this sooner..i have my map with all the custom content saved into an external package. Now i just tried to give my housemate this package, and my map file and he couldnt run the level. After reading this it seems that i should be saving all the custom content into the map file itself...but how can i do this? All this talk of redirects is confusing and i don't want to have to individually export 700+ files into the level package :\
What are my best options here?
I assume that both the map and the package were put together into the My Documents\My Games\...\Published\...\CustomMaps folder?
The external package does have a different name from the map file name?
If both of these are true and you are still having issues, you can Rename all of the content from the external package into the map file. Right-click on each asset, rename, specify the map name as the Package.
However, after doing so you should run the fixupredirects. In most cases you can simply copy your map and package into the &installpath%\UTGame\CookedPC folder and run the commandlet to clean up the references. The commandlet will usually place the cleaned file copies in the My Documents\My Games\...\Published\...\CustomMaps folder.
Where is this fixupdirects? Is it a program? I have the map file and the package in the custommaps folder and it runs fine on my computer, however on my housemates the map won't load..i think i'll have to copy everything over as you say, though its gonna take a while with the amount of files i have
EDIT: Found the fixupredirects info, thanks![]()
Last edited by PaulH84; 06-25-2008 at 07:46 AM.
Ok I was following along with this tut but now I'm lost, where do I edit this .ini file in step 4 of "Adding A screenshot texture"?
4. Set up the ini file for the screenshot.
- Edit the <mapname>.ini file that was created when you published the map.
- Change the line:
to readCode:PreviewImageMarkup=<Images:UI_FrontEnd_Art.GameTypes.DeathMatch>
for example:Code:PreviewImageMarkup=<Images:<mapname>.MapPic.map-pic-<mapname>>
Code:PreviewImageMarkup=<Images:DM-MyMap.MapPic.map-pic-dm-mymap> or PreviewImageMarkup=<Images:CTF-MyMap.MapPic.map-pic-ctf-mymap>
Read the entire tutorial from start to finish. Everything you need to know is there. The step right above the Screenshot section is this:
Do an initial Publish
1. Click on the Publish button on the top right of the editor. A first run through will be done to create the additional required files for the map. Publishing will optimize the map for file size and load time.
There should now be a <mapname>.ini and <mapname>_LOC_int.upk file in the "My Documents\My Games\Unreal Tournament 3\UTGame\Published\CookedPC\CustomMaps" folder. eg. DM-Mymap.ini and DM-Mymap_LOC_int.upk
The .ini file contains information on your map, the _LOC file is a localization (region) file.
Yes I understand where the file is as I said I've followed through the tut exactly, maybe I asked the wrong question, maybe I should have asked where do I find this code seen in the boxed areas named code? Do I need to republish to find it or is it somewhere else? Srry for the inconvience but I'm still only learning my way around this editor.![]()
I don't follow what you are asking.
When you publish your map, an .ini file of the same name as your map is normally automatically created in the same folder as your published map .ut3 file.
Double-click on the .ini to edit it in Notepad. An .ini file is just a regular text file that has a few lines of text in it.
As stated in Note 6, sometimes after performing multiple Publishes, you won't get an auto-created .ini, so just create one yourself and make sure it has all of the proper lines in it.
A couple of the lines are not normally in the auto-generated .ini file, so you have to enter them in yourself.
The rest of the lines should be there by default, as created by the publish process. So just change those line to read what they should according to your map name etc.
As shown in Note 6, a proper complete .ini will look like this, just be sure to change the appropriate lines so that they properly reflect the name of your map, the friendly name (what shows up in the menus), the location of the screenshot in your map, the description, and number of players.
Code:[DM-Mapname UTUIDataProvider_MapInfo] MapName=DM-Mapname FriendlyName=Mapname PreviewImageMarkup=<Images:UI_FrontEnd_Art.GameTypes.DeathMatch> Description=None NumPlayers=2 to 8 Players
Double-click on the .ini to edit it in Notepad.
Ahh, clear as day now, you answered my question fine, I didnt relise you simply double clicked on it, I was in the editor attempting to do it, thnx for the patience with such a simple thing.![]()
Just looking at the ini file, is it possible to control whether objects are visible in the ini file?
No, but what exactly do you mean?
Are you referring to whether specific objects in the map itself are visible? eg. Flags or Cores? If you are trying to control specific objects in your map file, use Kismet.
I have things like weather effects in my map - so I'd like to be able to toggle the rain meshes from outside of the file somehow. They're currently set on a random timer in kismet so they're turned on and off automatically, but I'd like to have them controllable.
Can Kismet actions be controlled externally?
Can't be done this way.
You would have to devise some method of triggering keyboard or mouse input, or sending proper replication information over a network.
Oh it wouldn't be online, only on a local machine, it's only intended to be like a single player type thing.
I can think of creating an interface with triggers in-game that would accomplish what I need, but this is a last resort, as it wouldn't save the settings (like toggling visibility of objects) that are changed.
I've set it up to trigger the events manually in Kismet via console commands (with causeevent), but again this isn't ideal, as it can't be saved - unless you can prove me wrong on this? That's why I'd like to have it from a text file that can be changed outside of the game, so it will startup with the selected settings.
With UScript you should be able to read/write to ini files.
It appears exec [filename] is the command I need - I'll call this at startup and hopefully this will let me do what I need. It looks as though there's a weird glitch when I just tried it, the first line doesn't seem to work, but every other line does. I guess it'll just have to have filler in the first line, since it doesn't do anything. It was a bit confusing when I only had one line of text in there and nothing was happening!
Hi DG - if possible, I need some help here - I'm attempting to cook a map for PS3 on behalf of the creator (with his permission, in case anyone was wondering!)
I've read, digested & followed a number of guides, including this one
Whenever I try to cook the map, I get a number of these errors (from the log):
That's just a part of the error list. The files & folders are NOT read only, I've checked that, & I've reinstalled a number of times. The cook will finish, but the map will have only default, untextured surfacesShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material VH_Cicada.Materials.M_VH_Cicada_ExhaustCone, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material VH_Cicada.Materials.M_Rocket_mesh, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material VH_Weapons.Materials.M_Raptor_SparkSpurt, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material VH_Raptor.Materials.M_Raptor_Explo_flames_red, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material VH_Manta.Materials.M_Darktest_Manta_smoke, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material PICKUPS.Deployables.Materials.M_Deployables_SlowVo lume_Cube_01, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material PICKUPS.Deployables.Materials.M_Deployables_SlowVo lume_Projector, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_Redeemer.Materials.M_Redeemer_DeemerSphere, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_Redeemer.Materials.M_WP_Redeemer_mesh_Flair, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material Envy_Effects.Explosion.Materials.M_EFX_Explo_SubUV _01, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_RocketLauncher.Materials.M_Flair_R, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_Redeemer.Materials.M_WP_Redeemer_mesh_Flair2, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_AVRiL.Materials.M_Dark_Smoke, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_AVRiL.Materials.M_Flair_large_Soft, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_AVRiL.Materials.M_Distortion_mesh, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\Material.usf - Is it READONLY?
Warning, Failed to compile shaders for Material WP_AVRiL.Materials.M_Rock_Fakelit, Default Material will be used in game.
ShaderPrecompiler: Failed to save to file C:\Program Files\Unreal Tournament 3\Binaries\..\Engine\Shaders\VertexFactory.usf - Is it READONLY?
Warning, Failed to compile shaders for Material VH_Goliath.Materials.M_Goliath_Dark_Dirt_01, Default Material will be used in game.
You indicated that the problem could be that I was using a Shader Model 2 graphics card (Sapphire Radeon 9600XT) - however, today I've upgraded to a Shader Model 3 Sapphire Radeon X1950 Pro, & I'm STILL having the same problem
It doesn't appear to be a problem with the (uncooked) map file as another user has been able to successfully cook the file (again with permission)
This has happened on four different files now (all of which I've attempted to cook with the relevant mapper's permission)
Can anyone shed any light on why this is happening? I can't find any solutions & it's driving me nuts ...
Danger could be my middle name ... but it's John - Eddie Izzard
PSN = feisar32
hello mappers! I have been following along with this thread for a few days now.
i published my map today, figuring out that "initial publish" and "final publish" are the same buttons XD
anyway..just wondering..how do i know when the "initial publish" is done..whats the last message i should get before i move onto "adding the screenshot texture" step
thanks in advance for whoever responds =]
edit: i hope this thread isn't dead >.<
edit2: the execution of commandlet took: 22.23 seconds what should i see/do next?
Last edited by the_witness; 10-27-2008 at 05:52 PM.
I haven't encountered that error before, so at this time I cannot offer any solutions.
I should re-write this tutorial to make some of it a bit easier to understand.
All that the "initial publish" is doing is creating a copy of the final built map in the UTGame\Published\CookedPC\CustomMaps folder so that you can play the map in UT3 and do a screenshot capture.
Normally, the source map will only be in the Unpublished\CookedPC\CustomMaps folder, where it won't be seen by UT3's in-game menus.
If you wanted, you could skip the initial publish and manually copy the map file to the Published\CookedPC\CustomMaps folder so that it can be played in UT3.
Once the Publish dialog gets down to the x errors and execution time, you can close that window and continue on with what else needs to be done.
ooh alright i wasn't sure if it was still doing something important.
last time i closed the unreal editor 3 program during the "publish"
i couldn't even get the editor to open so i was just being cautious.
thanks for the quick reply, helps me a lot
i know you have your things to do as well
but this is my school project, so really, TY![]()
my schools level design class blows
I'M A SELF TAUGHT MAPPER
Maps:
DM-17AGAIN:http://utforums.epicgames.com/showth...2#post25617302
What do I do if assets don't show up on other computers? The bulk of them are there and display fine, but things like 1/4 decolayers or a random asset like a fence piece won't show up and are hidden. The fence is invisible but the collision is still there which is odd. Any suggestions?
Did you create all custom assets in the map package itself or did you use an external package? External packages should not be used for a number of reasons. If an external package was used and everything was later moved to the map, then there are redirector issues.
I am using 1 external package but have been using it in correlation to this particular map since it's induction. I have heard from another that some assets are set to high or medium when created and will only display if the computers graphics settings are at or above the the setting used on the particular asset. I will confirm this and post back when I get the results. Btw, thanks for the reply DGUnreal and I hope this redirector issue isn't what is going on. And if it was, what would I do about it? Thanks again!
I found out the problem and someone else pointed it out to me is that I need to set the asset to low detail mode under the mesh properties, somehow it got turned to high detail mode so it disappeared if the player had their graphics set to 1/5 for instance. I'm not sure on how to set the foliage meshes to not disappear though, I'm guessing they are hard-wired into code so that they will simply turn off if the player has their graphics set to low. Any known workaround with the foliage meshes?
I would get rid of the external package anyway, unless it is a mod or tc there is no good reason to use external packages and a lot of bad reasons. A lot of gamers and server admins also won't install maps that use external packages.
Foliage Factories etc. are supposed to cull based on detail level and distance otherwise it kills performance. The only real way around it would be to use manually placed meshes and culling volumes or possibly multiple foliage volumes. If a map is designed to rely on foliage to hide players, then the stock foliage factories won't work properly to do this.
It is a tc and is basically just a single player map with puzzles and story but could also be a DM just for multiplayer fun, I will maybe even make the map have a co-op story mode. But you're saying that I should use the map's package to store all my custom assets? It just seemed this was the best solution for what I wanted to do. Also, I haven't really used the map's package which is the one with the same name as the map file. I was just wondering if the assets in that package will update if I change the map's name?
I don't use any foliage factories, just the foliage meshes that are tied into the terrain materials. But I have noticed these foliage meshes don't display for low graphic settings, which I was wondering if there was a setting in the editor to change this, maybe just make the cull distance alot shorter than the high graphics settings :/
Apollyon Asylum - Single Player Horror-Story Puzzler
External packages are fine to use if the assets in them are definitely heavily shared between multiple maps within a project, otherwise for numerous reasons if there is only one map everything should be in that map. Especially for assets that relate to just that map such as TerrainMaterial and TerrainLayerSetup etc.
Some of the reasons being: lost packages, package name conflicts with other people's projects, redirector issues, path issues, plus cooked maps contain a portion of every externally referenced asset so a significant chunk of everything in any external packages is cooked right into each map file anyway which makes the entire distributable larger if external packages are used.
The "internal" map package is the easiest to use, simply specify the map name itself for the Package when importing assets (it can also be picked on the Package combo drop-down). A map file is essentially just a package file with a game-specific file extension anyway, so by specifying the map name for the Package all this does is import the asset into the map file itself. Group naming should also always be used to organize the content.
Internal assets in a map file are the best because not only does it stay relevant to the file even if the map file is renamed, but if you actually rename any assets themselves or move them around groups, it doesn't create redirectors like occurs with external packages.
Unfortunately none of the three built-in foliage systems expose a setting for DetailMode (Terrain Decolayer, TM Foliage, or FoliageFactory Volumes).
As I mentioned you would have to manually place staticmeshes in order to get this functionality.
Last edited by DGUnreal; 12-22-2008 at 06:50 PM.
Thanks DGUnreal, I appreciate the knowledge you have shared with me and definitely have more clarity on the subject, I hope someday I can return the favor!
Apollyon Asylum - Single Player Horror-Story Puzzler
Ok, this might sound stupid in hindsight but I was following DG's very clear tutorial on cooking for the PS3 but there was this one lil' tiny additional step I had missed that was giving me grief...
...I hadn't installed the PS3 tools. /facepalm.
It was very confusing for a while because even without the tools Unreal Frontend looks like it will cook for the PS3 and kinda goes through the motions, but it won't actually work.
Anyway, it works now. Thanks for the tutorial DG!![]()
Anyone happen to know if paragraphs are possible in the description written inside the maps' .ini file? I'd rather not make a wall of text, without any formatting.
If not possible, I'll just rely on the readme... :P
Also known as Rask — http://www.ottorask.com/
UT3 Levels: CTF-Austere (MSU P3 5th place)
UE3 Tutorials: From Textures To Materials In UE3 — Complex Fire In UE3
Bookmarks