Installing and running FX Composer under linux with WINE

FX Composer is a shader authoring tool developed by NVIDIA in 2008. While it is discontinued, it still stands as one of the best tools for creating and experimenting with your own shaders, when your engine isn’t ready for that yet.

Notable features:

  • Shader editor
  • Scene view
  • Material and asset library
  • Example shaders
  • Example models
  • Imports models + textures
  • CG and HLSL support
  • Context menu to insert code snippets so you don’t have to worry about semantics

This tutorial will focus on bringing this tool to linux using WINE with  PlayOnLinux.

There are a couple of features we won’t be able to add to linux, though: DirectX + HLSL support, and stability.

What I’m using: Ubuntu 14.10 and 14.04, PlayOnLinux, NVIDIA’s FX Composer 2.51

Installation

If PlayOnLinux isn’t installed, you can find installation files or commands for your necessary distribution here.

Download FX Composer 2.51 if you haven’t already done so.

Run PlayOnLinux.

Click “Install”.

PlayOnLinux_004

Click “Install a non-listed program” at the bottom left corner of the screen.

PlayOnLinux install menu_005

Click Next.

Select “Install a program in a new virtual drive” and click Next.

PlayOnLinux_006

Enter a name you can use to identify the program, and click Next.

PlayOnLinux_008

Select “Install some libraries”.

PlayOnLinux_012

Select “32 bits windows installation”, even if you are running on 64-bit architecture.

A virtual drive will be created and now functions as the environment that FX composer will recognize. It is placed by default under $home/.PlayOnLinux/wineprefix/DRIVENAME/drive_c/

You will now be presented with a list of additional libraries to install in alphabetical order, and you will need to select the following boxes:

  • POL_Install_d3dx10
  • POL_Install_d3dx9_43
  • POL_Install_dotnet20
  • POL_Install_dotnet20sp2
  • POL_Install_mono210
  • POL_Install_vcrun2005

Some of these aren’t necessary but I haven’t spent the time to figure out which ones are or aren’t needed.

Click Next.

You can now select the file to run for installing FX composer. This should be the executable file you obtained from NVIDIA. Click Browse and find the file, then click Next.

Select a file_011

The FX Composer windows installer should pop up, and you can follow instructions

NVIDIA FX Composer 2.5 - InstallShield Wizard_013

and keep clicking next until you get to the python installer window:

Python 2.4.4 Setup_014

If this window appears, installation is going well and there are no problems.

If this window does NOT appear, you missed some libraries above and need to start over the install process.

Go ahead and keep clicking next.

You can de-select Direct3D if you want, as it won’t work if you try to enable the Direct3D renderer. But, it shouldn’t break your install if you install it.

NVIDIA FX Composer 2.5 - InstallShield Wizard_015

Click next 2 more times and the installation is complete! PlayOnLinux will offer to create a shortcut, go ahead and point it to FXComposer2.exe, and hit Next another 3 times.

You can now run the program! There should also be a shortcut on your desktop to it.

NVIDIA FX Composer 2.5_016

Running and Troubleshooting

-If you are using an NVIDIA Optimus laptop and have set up bumblebee, you will need to add “optirun” to the front of the command in the shortcut on your desktop.

-Sometimes the program crashes on project load. Not sure how to remedy this, but it seems to vary depending on hardware.

-Sometimes the project and assets hierarchies don’t show any text. This is frustrating and I have no idea why this is happening. However, it seems to fix itself after a period of time. And sometimes it doesn’t even happen.

I find doing something else and coming back to the window later solves the problem. You can also work around it by using your arrow keys to navigate and look at the properties window to see what item is selected, but this is only reasonable when working with simple effects.

If you find the solution to any of the above problems, or come across a new problem, I’d love to hear it! Post it in the comments section below.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s