1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

3D Art Assets in Civilization 6: A Modding Guide

Discussion in 'Civ6 - Modding Tutorials & Reference' started by Deliverator, Mar 14, 2017.

  1. Deliverator

    Deliverator Graphical Hackificator

    Joined:
    Feb 12, 2008
    Messages:
    4,053
    Location:
    London, UK
    First, I'd recommend using CivNexus6 to create a .cn6 file rather than .nb2. This is now the default. Then use the .cn6 import add on (
    io_import_cn6.py)
    for Blender 2.7+. The .nb2 format is the older Civ 5 format and is not as good in a few ways.

    Second, it looks like you are using the wrong script. You are using the older Blender 2.49 version of the .nb2 script with Blender 2.7+. You should be using the Blender 2.7 add on (
    io_import_nb2.py)
    with Blender 2.7+ if you want to use the .nb2 format.
     
  2. Windflier

    Windflier Chieftain

    Joined:
    Dec 15, 2017
    Messages:
    4
    Help, I try to make a new history moment image in the game, I write all the .tex,.xlp,Mod.Art correct, but my project doesn't build any .dep file
    01.png 02.png 03.png
     
  3. ShiroToraRyu

    ShiroToraRyu Civ 6 Modder

    Joined:
    Apr 26, 2014
    Messages:
    243
    Gender:
    Male
    Location:
    Planet Earth
    Hey Deliverator, i tried to make my very first Animation...and have Problems to Export the finished Animation without the armature ? or isnt that possible ? no idea what to do here.
    when i Import the Animation into civnexus6, then i have the Animation but also the armature, which seems to be wrong. civnexus6 create a .geo file instead of a .anm file, which seems also to be wrong
    How can i Export the Animation without the armature to fbx ? also, to create the Animation, i used blender 2.49, but is it also possible to Export a Animation via Blender 2.7 ?
     
  4. FurionHuang

    FurionHuang Chieftain

    Joined:
    Apr 27, 2017
    Messages:
    164
    Gender:
    Male
    Hey lasttry, it’s a little tricky. After you imported FBX into Nexus, you need to “save animation” first, open your saved fgx file (not generate anm file directly) and you will find only the animation was extracted. Then you may generate the anm file.
     
    Deliverator likes this.
  5. Deliverator

    Deliverator Graphical Hackificator

    Joined:
    Feb 12, 2008
    Messages:
    4,053
    Location:
    London, UK
    @lasttry I always use Blender 2.49 for animation work. It’s the only version with the working .na2 script if you want to edit existing animations. I will then use Nexus Buddy 2 to convert .fbx to .gr2 animation and CivNexus6 to convert .gr2 to .fgx.
     
    Last edited: Apr 30, 2018
  6. ShiroToraRyu

    ShiroToraRyu Civ 6 Modder

    Joined:
    Apr 26, 2014
    Messages:
    243
    Gender:
    Male
    Location:
    Planet Earth
    thanks FurionHuang and Deliverator !
     
  7. ShiroToraRyu

    ShiroToraRyu Civ 6 Modder

    Joined:
    Apr 26, 2014
    Messages:
    243
    Gender:
    Male
    Location:
    Planet Earth
    EDIT : Fixed. it was an Error in the Code of the Asset File.



    running into a Problem, when i try to make a new custom Building, Asset Editor wont load the my asset. the following error message showing up :

    Spoiler :

    System.NullReferenceException: Object reference not set to an instance of an object.
    at AssetEditor.ModelInstanceAdapter.OnParentNodeSet()
    at Sce.Atf.Dom.DomNodeAdapter.ParentNodeSetInternal()
    at Sce.Atf.Dom.DomNode.SetParent(DomNode parent, ChildInfo childInfo)
    at Sce.Atf.Dom.DomNode.NodeList.ChildList.InsertItem(Int32 index, DomNode item)
    at Sce.Atf.Dom.DomNode.NodeList.Insert(Int32 index, DomNode item)
    at Sce.Atf.Dom.DomNode.NodeList.Add(DomNode item)
    at Sce.Atf.Dom.DomNodeListAdapter`1.Add(T item)
    at AssetEditor.GeometrySetAdapter.Update()
    at AssetEditor.AssetAdapter.AssignPropertiesFromEntity()
    at AssetEditor.InstanceEntityAdapter.Update()
    at AssetEditor.BaseEntityEditor.InitializeAdapter(DomNode node, IInstanceEntity entity)
    at AssetEditor.BaseEntityEditor.Open(Uri uri)
    at Firaxis.ATF.AssetBrowserFileCommands.DoOpen(IDocumentClient client, Uri uri)
    at Firaxis.ATF.AssetBrowserFileCommands.FindOrOpenExistingDocument(IDocumentClient chosenClient, Uri docUri)
    at Firaxis.ATF.AssetBrowserFileCommands.OpenExistingDocument(IEnumerable`1 clients, Uri uri)
    at Firaxis.ATF.AssetBrowserFileCommands.DoCommand(Object commandTag)
    at Sce.Atf.Applications.CommandService.item_Click(Object sender, EventArgs e)
    at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
    at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
    at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
    at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
    at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
    at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
    at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.ToolStrip.WndProc(Message& m)
    at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
    at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
    at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
    at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
    at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
    at AssetEditor.Program.Main(String[] args)


    got no idea whats wrong.
     
    Last edited: Jun 10, 2018
  8. Proclo

    Proclo Chieftain

    Joined:
    Jan 25, 2017
    Messages:
    144
    Gender:
    Male
    Location:
    Spain
    Awesome work!!! I've got a question for all of you guys, sorry if it has already been answered. I'm trying to make a unit with a leader man on horse, two musketmen, one religious guy and a carrier guy with a settler's donkey. Is it possible make such unit? Every one of them with different animations? And if so, how could I do it? Thanks in advance!!!
     
  9. Mangov

    Mangov Chieftain

    Joined:
    Jan 10, 2019
    Messages:
    21
    Gender:
    Male
    Hey mates i just started and installed the assets but mine dont look like yours in the first toutorial. In the Asset browser i dont have the CIV 6 option and i cant see the basicc art of the game. In the picture below i pointed what i am missing in the asset browser.
     

    Attached Files:

  10. Wolfdog

    Wolfdog Unit Butcher

    Joined:
    Jun 29, 2012
    Messages:
    609
    Location:
    Australia
    In Modbuddy I think that you can specify the file paths in Options -> Civilization VI -> General.
     
  11. FurionHuang

    FurionHuang Chieftain

    Joined:
    Apr 27, 2017
    Messages:
    164
    Gender:
    Male
    @Deliverator Any idea how to tackle the new city center (canal type) base model and Granary/Monument building locations? I see a new entry in Buildings.artdef that defines the location rule of these buildings (different entry from Watermill's riverside parameter), only editable through text editor now, without receiving an Asset and AssetEditor update these are not visible in AE.
    And it's kinda hard to figure out if for the new city center base all the Granary/Monument models are moved to model space origin (just like Watermill) and apply the location rule, or the building models are left at vanilla version location (which is their absolute location in a tile) and the new rule move them relatively. Either way makes sense to me.
    This is important if anyone wants to make Granary/Monument UB and have the customized model shown correctly.
     
  12. Deliverator

    Deliverator Graphical Hackificator

    Joined:
    Feb 12, 2008
    Messages:
    4,053
    Location:
    London, UK
    Sorry @FurionHuang I've not looked into it. It may be something that needs to wait for the SDK update/Expansion assets release.
     
  13. FurionHuang

    FurionHuang Chieftain

    Joined:
    Apr 27, 2017
    Messages:
    164
    Gender:
    Male
    I actually did my experiments. It is the latter case: Granary and Monument are at where they were, though Granary got smaller. Then in artdef applied attachment point parameter to the building, the building will rotate with canal base.
     
  14. FurionHuang

    FurionHuang Chieftain

    Joined:
    Apr 27, 2017
    Messages:
    164
    Gender:
    Male
    20190219125137_1.jpg
    The trick is in Buildings.artdef file, under m_Values, there's a new entry like this:
    Code:
    <Element class="AssetObjects..StringValue">
        <m_Value text="DIS_CTY_Granary_CP"/>
        <m_ParamName text="AttachmentPointName"/>
    </Element>
    That does the work. Unfortunately now this entry isn't exposed to AE, we have to edit it manually in text editor. And it doesn't build with Modbuddy, we need to copy/paste the edited artdef file into MOD folder directly.
    Hope Modbuddy and Asset get an update soon.
     

Share This Page