1. 程式人生 > >Can I compile and run Dx11Shader for Maya 2015 on my side?

Can I compile and run Dx11Shader for Maya 2015 on my side?

Currently, you can find the source code of Dx11Shader under our devkit\plug-ins\ folder, but if you want to do some modification on this, can it be built and run within Maya 2015? Currently, the answer is Sorry! It’s currently a known issue, and hopefully, we will get this fixed in the coming release.

But in case if you do have need to build it on your side now, we have provided the updated project with the correct library at https://github.com/ADN-DevTech/Maya-dx11Shader-Sample. There is no Debug Effect component library provided as this time, so use Hybrid whenever you want to build the Debug version of your dx11Shader version. 

Btw, if you are interested, here is some explanation and reason about the issue of the original project.

When you open the project, you will find the project file of Dx11Shader is still using VS 2010, which means based on VC 10. But it’s not compatible with Maya 2015. So 1st step you need to upgrade to VS 2012. Actually, for Maya 2015, you need to go with Visual Studio 2012 SP4.

After that, you should notice that there are some changes related to compiler version inside the source code, for example, at dx11Shader.h line #24 as follow. You will see the plugin uses different header files for VC 11(VC 2012) and above. Actually, these are not changes we need, but that Microsoft pushed to all dx11 developers. For more details about this, please read the article(mainly section 5) http://msdn.microsoft.com/en-us/library/windows/desktop/ee663275(v=vs.85).aspx and http://blogs.msdn.com/b/chuckw/archive/2013/08/21/living-without-d3dx.aspx.

Code Snippet
  1. // for VS 2012, Win8 SDK includes DX sdk with some header removed
  2. #if_MSC_VER >= 1700
  3. #include<dxgi.h>
  4. #else
  5. #include<d3dx11.h>
  6. #endif

In short, D3DX is not considered the canonical API for using Direct3D in Windows 8 and later and therefore isn't included with the corresponding Windows SDK. So for our Dx11Shader project with VS 2012, not only you still need to include $(DXSDK_DIR)Include and $(DXSDK_DIR)Lib\x64, but also you need to put the $(WindowsSDK_IncludePath) and $(WindowsSDK_LibraryPath_x64) first in the list of header file and lib search.

After the operation above, you should be successful build the project, but there are still some problems to run within Maya 2015, you will see an error saying like “ Error: Effect from file compile errors (AutodeskUberShader.fxo)”, means your Dx11Shader cannot work correct with HLSL shaders.

Why this problem occurs? Actually, it’s very tricky, and is also a current limitation. As you see, the Dx11Shader has a dependency on a static link library of effects11.lib, which is supposed to be located in DirectX SDK folder like C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Samples\C++\Effects11\. Yes, that is true and it should work in previous Maya version. But unfortunately, Maya internally updated that project, so it cannot work anymore, and you need to link to our internally modified version of effects11.lib, but sadly, it’s not public to outside:(.

相關推薦

Can I compile and run Dx11Shader for Maya 2015 on my side?

Currently, you can find the source code of Dx11Shader under our devkit\plug-ins\ folder, but if you want to do some modification on this, can it be built a

Ask HN: How can I improve and make my CV more effective?

Hi All, I am looking for constructive feedback about my CV. I am a software engineer turned manager with a long history in system integration consulting co

How To Run ATmega328P For a Year On Coin Cell Battery

An Arduino Uno runs less than one day on a 9 V battery because it uses about 45 mA current. Using an Arduino Pro Mini, with a simple modification, the pow

Evaluating PlaidML and GPU Support for Deep Learning on a Windows 10 Notebook

Evaluating PlaidML and GPU Support for Deep Learning on a Windows 10 NotebookFigure 1. PlaidML Logo.PlaidML is a deep learning software platform which enab

How can I use different pipelines for different spiders in a single Scrapy project

2012-11-28 Hi vitsin, You can’t override settings like this in your spiders like your code does: class FirstSpide

I want to learn Artificial Intelligence and Machine Learning. Where can I start?’

How did I get started?My friends and I were building a web startup. It failed. We gave up due to a lack of meaning. But along the way, I was starting to he

Ask HN: What do you think about my agency's new website and how can I improve it

We had to retire our old website, and move to something more modern and simplistic. However i feel that i spent a lot of time over thinking this project, s

Ask HN: A company used my source code for their product. What can I do?

> And there are licenses for this. At the very least, a 'all rights reserved' would have been better than having nothing specified.Legally, that phrase

Can I use the new YC SAFE document for an LLC?

Our company is not raising traditional VC capital and our prospective angel investor does not insist on converting to a Delaware C Corp...for now. To save

What is a Webhook and how can I use them at my company?

The Webhook is increasingly being used by companies hoping to improve their customer experience. But what exactly are they and how can they help you? If y

Super Hacker George Hotz: I Can Make Your Car Drive Itself for Under $1,000

Famous or being the first hacker to jailbreak the iPhone at 17, George Hotz is taking on Waymo, Tesla, and Uber in the race to build the first fully operat

[ubuntu]E: The package jenkins needs to be reinstalled, but I can't find an archive for ...

ubuntu 1404上,apt-get install 會不成功,發生以下現象。 現象: Reading package lists... Done Building dependency tree        Readin

Potter:I am not for learning and learning, but for study and work

看不少文章都沒有弄得這個泛型到底是做什麼的,怎麼用?下面這篇文章就用最通俗的話來介紹...一看就明白規則和限制:       1、泛型的型別引數只能是類型別(包括自定義類),不能是簡單型別。   2、同一種泛型可以對應多個版本(因為引數型別是不確定的),不同版本的泛型類例項是

Can I become a good programmer without math and algorithms knowledge?

Knowledge of algorithms has very little to do with programming skill.  As some random dude* on the internet once said:  "When in doubt, us

How can I run two Django versions in the same server?

You should definitely go with virtualenv. This is how you can check if you already have virtualenv installed: $ virtualenv --version

What can I learn right now in just 10 minutes that could be useful for the rest of my life?

人們傾向於記住最先發生的事情和最後發生的事情。中間的事情記不清楚。所以,如果你要做自我介紹的話,最好做第一個或者最後一個。面試的時候,也是一樣的。 如果你在酒吧或者前臺工作,在你身後放一面鏡子。這樣的話,當顧客發脾氣的時候,就能從鏡子裡看到自己的醜惡嘴臉。一面鏡子可以顯著降低他們無理取鬧的概率。 報價之後,

2017 Pre-summer Training I - Searching and Strings

strlen .com event 分享 ddn char c++ esp style B. 單詞替換(KMP + Lazy標記) Sample Input 3 aaa a b aaa aa b ababa aba cd Sample Outpu

小胖說事31------iOS 真機編譯錯誤&quot;“XXX”的 iPod&quot; and run &quot;XXX&quot; again, or if &quot;XXX&quot; is still running

是不是 col ont lec bug div attach tracking 進程關閉 在真機上測試時用一會就出現例如以下信息,且應用掛掉。 Restore the connection to "“XXX”的 iPod" and run "XXX" again, o

WCF: Generate Proxy Class and Configuration file for Client

alt host man class studio generated wcf div intro 1. please keep WCF service running 2. and two ways to achive this   a. add Service R