ZBrushCentral

Using Zbrush on Linux

I followed both the instructions on here and on WineHQ to install zbrush.
One way I figured to resolve some issues with Lightbox was to open up the folder in a File Explorer then to create a new folder from the File Explorer and place the files that I use/want in the new folder(s).

Linux: Pop_OS! 20.04
RAM: 32GB
CPU: Ryzen 7 3700X
GPU: 2060 Super

1 Like

Performance has increased dramatically. Copying the subtools in the image was done quickly.

Issues are similar as mentioned previously, however all limitations have not been checked.

Basically use the Linux File Manager to work around the Lightbox icon limitation.

Use a mouse (not tablet) if you use ZBrush Wine file manager to avoid breaking tablet pressure support (unconfirmed).

Below follows a quick and dirty version for how to compile Wine on CentOS7:

COMPILING LATEST STABLE WINE, INSTALLING AND RUNNING ZBRUSH ON LINUX

To install Zbrush both Wine (32-bit) and Wine64 must be installed. Some Linux distributions might provide both versions. If your Linux distribution does not provide that they can be compiled from source. A quick guide follow below.

Neither Winetricks or any wrapper or patches for Wine was used when applying the below guide. Only the Wine source, the dependency packages, winecfg and the ZBrush installer were used.

This guide is based of the original guide here https://www.systutorials.com/install-32-bit-wine-1-8-centos-7/ and winehq. However, installing all dependencies from the (systutorial) script may cause a system to become unstable. A somewhat modest and minimalistic approach is attempted in the following guide.

For other platforms than CentOS 7 you might need to adjust things or find another guide.

WARNING AND ADVICE

if you must have every ZBrush feature working and full Lightbox support you probably will not be satisfied with the ZBrush Wine method. You could use a dual boot system and run WIndows for long ZBrush sessions. Additionally you could simply add support for ZBrush Wine as additional method only for short sessions from Linux directly. Then you could get the best from both systems. Running ZBrush Wine will use one of your ZBrush activations.

(OPTIONAL) BACKUP SYSTEM

(using your favorite method) could be a good idea if you regret anything.

REMOVE PREVIOUS WINE INSTALLATIONS (IF APPLICABLE)

[yum] erase wine wine-*

INSTALL DEPENDENCIES

BEFORE COMPILING SOURCE
[yum] groupinstall ‘Development Tools’ -y
[yum] install 

gcc
kernel-devel
libusb-devel
gnutls-devel
libXrender-devel
freetype-devel
libjpeg-devel
libjpeg-turbo-devel

i686 (32-bit)

[yum] install 

glibc-devel.i686
libusb-devel.i686
gnutls-devel.i686
freetype-devel.i686
libjpeg-devel.i686
libXrender-devel.i686
libX11-devel.i686

TABLET PRESSURE SUPPORT

One or more of the following X related packages should provide Wacom support (if your window manager uses X).

[yum] install 

libXxf86dga-devel
libxslt-devel
libXcursor-devel
libXi-devel
libXxf86vm-devel
libXrandr-devel
libXinerama-devel
libXcomposite-devel

DOWNLOAD, EXTRACT AND MOVE WINE SOURCE

example: wine 5.0.2 [ or latest stable source ]
https://wiki.winehq.org/Download
tar xf wine-${ver}.tar.xz
mv [wine source folder] /usr/src
cd /usr/src
cd wine-${ver}/
mkdir -p wine32 wine64

CONFIGURE 64-bit

cd wine64

/configure --enable-win64
(replace cores with integer e.g 1-16 or more)
make -j [cores]

CONFIGURE 32-bit

cd 
/wine32
PKG_CONFIG_PATH=/usr/lib/pkgconfig 
/configure --with-wine64=
/wine64
(replace cores with integer e.g 1-16 or more)
make -j [cores]

install 32-bit version first

(from wine32 dir)
make install

INSTALL 64-BIT VERSION

cd 
/wine64
make install

check

(you might need to launch a new terminal first)
wine --version
wine64 --version

CONFIGURE WINECFG FOR ZBRUSH

winecfg
[ for suggested installation, if uncertain, answer yes to all ]

winecfg > Libraries > native, builtin
atl120
msvcp120
msvcr100
msvcr120
msvcr90
vcomp120
api-ms-win-downlevel-normaliz-l1-1-0
api-ms-win-downlevel-shlwapi-l1-1-0
api-ms-win-downlevel-user32-l1-1-0
gdiplus
normaliz
ole32
rpcrt4
shlwapi
vcomp90

winecfg > Libraries > builtin, native
comctl32
msvcrt

winecfg > Libraries > native
mfc42
mfc42u

INSTALL ZBRUSH

Probably only 32-bit wine will install ZBrush, but you could try 64-bit first (do this once when it works)
wine64 ‘[path to installer (.exe)]’
wine ‘[path to installer (.exe)]’

CREATE SHORTCUT

wine64 ‘c:\program Files/Pixologic/ZBrush 2021/Zbrush.exe’

RUN ZBRUSH

use the shortcut/icon
(Browser support to activate ZBrush does/should work)

TO UNINSTALL WINE

cd /usr/src/wine-${ver}/wine32
make uninstall
cd /usr/src/wine-${ver}/wine64
make uninstall

WHERE IS WINE?

Show hidden folders in your home folder (there should be a .wine folder)

2 Likes

I know a lot of fellow artists interested in getting ZBrush to run on Linux. I mean it’s open source, so why are you guys at Pixologic not supporting Linux? You can even get a Keyshot version running on Linux and Keyshot is way “younger” than ZBrush, if you know what I mean.

Here is a guy at askUbuntu, reporting that using Kubuntu 19.10 ZBrush is apparently working (except for the Alt key): https://askubuntu.com/questions/1219589/zbrush-2020-wine-and-kubuntu/1270570#1270570

On XFCE4 the Alt key is by default set to move windows so that need to be disabled before it will work in ZBrush. Maybe it is the same for Ubuntu?

Another option to run ZBrush without any bugs on Linux would be to use VirtualBox . It’s open source, you can install it on Linux and that way run ZBrush in a Windows environment on a Linux machine. You can find the details in their online documentation here:
https://www.virtualbox.org/manual/ch01.html

Tried Qemu-kvm virtualization previously.

Noticed the following issues that do not happen with Wine:

  • slight performance loss with lag (when compared to Wine)
  • GoZ or Z not supported (i.e. fast data transfer to and from Linux apps).
  • when using tablet passthrough it is a bit annoying to get it back for use in other Linux apps

However, as a supplement to Wine it could solve some issues. That could be using decimation (which will not handle very dense meshes via Wine).

Do you not see the same issues with Virtualbox?

As for me I’m getting used to managing Wine Zbrush with the Linux File manager together with Z (tools). It is great.

As a supplement to using a Linux File Manager to interact with ZBrush it is now possible to have many shortcuts in Lightbox under the “Recent” tab (not other regular tabs).

Under Preferences / LightBox “Max Recent Files” can be set to 500. Using QuickSave and then moving those quicksaves with the Linux File Manager it is possible to more conveniently work with projects in combination with the “Recent” tab.

Please note that ZScripts and other scripts are used to import and export data (Z “tools” for Houdini on Linux which is equivalent to Go Z).

1 Like

Hi all, I now have started using ZBrush 2021.1.1 with Wine 5.5, installed by using Lutris. Lutris is pretty much a way to go app on running ZBrush on Linux. It’s really an amazing app to manage ZBrush on Linux, you can switch several wine versions anytime, launch with settings which is set lower resolution for better ZBrush look in hi-res 4K monitor and back to normal automatically when you finish a ZBrush session.

Now ZB 2021.1.1 runs really good, I feel it runs with even a bit better performance than Windows 10. (view port performace for example, I oftentimes see lagged background reference images when working on a bit heavy models in Win 10, it happens in Linux sometimes too but much less)

Only problem I have now is Lightbox issue so far. (As everybody mensioned and THINKIT showed a nice provisional solution tips to solve this issue above).
Here’s how it looks in my 4k monitor with 2560x1440 (100% scaling), and how it looked in normal 4k res 3840x2160.

This 4K resolution problems has been solved with using launch / quitting resolution settings in Lutris. (That’s why recommend it).

Hi @Histone. Your example looks good and great to hear that Lutris works well for you. Simple methods are better if they work.

1 Like

@wam3d @Spyndel @zber2 @Histone @davidkillerzombies @Salvador_Nunez

Using Python I wrote a small program that will find all ZBrush projects and ZTools in a series of specified paths. Then all those will be added to the recent tab in LightBox.

On my system it will scan through the QuickSave path, my projects path, and the entire ZBrush installation. It finds more than 529 items in less than a second.

If you are using Linux to run Wine ZBrush you might want to try out my little python3 program that make the “Recent” LightBox tab more useful.

The current version was put together in about half a day. If you find it useful it would be interesting to know.

Installation, configuration and usage instructions are provided in the readme file.

ZLightBoxRebuildRecent_v1.02a.zip (2.2 KB)

For those who would like to get started with ZBrush scripts here are two basic examples. One ZScript (as a txt file) will export the current subtool to your QuickSave folder. To try it out first extract the zip file. You could place it in your QuickSave path to test it. Then right click the file and choose to open the txt file with “ZBrush Executable”. The other example will import the file you just exported. It is possible to make or buy more advanced ZScripts. For example using Python it is possible to first generate a ZScript and then execute it.
export_subtool.zip (337 Bytes)
import_obj.zip (348 Bytes)

I have found that ZBrush2021.1.2 / “Liveboolean” and “Make boolean mesh” doesn’t work at all on my Ubuntu 20.04LTS, Lutris with Wine 5.5.

Anyone?

Here’s a subtract test with a cube and a star. It is also live, i.e. editable. It seems to work because it is possible to subdivide both inputs while retaining the subtraction. Does this not work?

1 Like

@thinkit, Thanks a lot for your report.

subdividing is ok, The issue is that a process always finishes without subtracted items, with this " Union remeshing in progress
" alert.
Screenshot from 2020-10-08 08-35-23

@Histone

The alert “Union remeshing in progress
” takes appx 10 seconds then it is done. It should disappear.

Troubleshooting suggestions:

  1. try a lowpoly mesh first
  2. check that you applied “Make PolyMesh3D”
  3. activate Live Boolean
  4. check your settings under Subtools (for example choose subtract)
  5. run “Make Boolean Mesh”

If the above does not work maybe there is something else hindering Boolean from working. On my system, for example, decimation only works for somewhat lower dense meshes. However I have a GoZ equivalent (Z) and can use Houdini also if needed.

1 Like

@thinkit

Sorry for my slow reply. Since last time I did fresh installation of Ubuntu 20.10 and re-install everything, Lutris, wine, and required libraries.

ZBrush 2021.1.2 is running fine with the latest Lutris on Ubuntu 20.10.
Live boolean also works fine now.
The only issue still remains is light box but that’s not a big problem for me.

Thank you very much for your tips and everything.


I’m curious about the performance compare to the same machine on Windows.
How do you guys think?

On my machine, I got some lagged background images while dragging around the heavy data, but it doesn’t happen on Linux. so I feel it even comfortable than on Windows, but that’s not enough evidence to comparing the performance between Linux and Windows.

and, I also curious about the memory and CPU usuage on Linux, compared to these on Windows. Is it faster, same, slower, etc.

If anyone interested in this topic, any comments would be welcomed.

@Histone

Hi Histone. So great that you have ZBrush running fine with Lutris on Ubuntu 20.

Sorry, I can not compare performance between systems at the moment. However when doing some real character modeling it was possible with Wine Zbrush and the performace was not an issue at all.

1 Like

@thinkit

Thanks a lot for your reply. Glad to hear performance is good on your serious work.

I’ve been using ZB on Linux for 3 month now. Here’s some issues I have noticed on performance. I just want to let it know to everyone whom concerns on ZB on Linux.

  1. Decimation Master performs a little bit slow or not performs well. It doesn’t respond some times on very hi-poly Dynamesh object, compare to that on Win and Mac. You need to lower the resolution of the Dynamesh before use it.
  2. Decimation Master processes (DecimationMasterApp.exe) kept alive even after ZBrush quits. It runs separately each time you execute. You need to kill the processe to purge memory.

ZBrush uses several separated executable files such as Decimation Master, ZColor, ZRemesher, etc and these additional exe files are not reach to the best performance IMHO.

But ZBrush itself perfroms well and regular sculpting / brushing works are functioning well overall so far.

I hope more people interested in “ZB on Linux”. More and more people interested then Pixologic might be interested in it some day. ( I hope)
I really really want Pixologic release the official Linux version someday in the future.

Many of other 3DCG programs are “real cross-platform” nowadays. Even “Free software” Blender has Linux version, and its sculpting is amazingly improving and catching up ZBrush sculpting at really fast pace. It even performs way much better than Windows version. I think Linux is the best platform for many professional production workflows on multi-core workstation, 'cause its stable, calm, useless overhead processes free.

ZBrush is developed with using Qt which is the crossplatformable. I have many many “WHYs” in mind.

1 Like

Mobile solutions for Running ZBrush

This post is simply related to Using Zbrush on Linux with a MS Surface Pro. Additionally it briefly describes how it is possible to use it to access a high-end workstation that run Zbrush. In my case it is Linux via Wine.


ZBrush on MS Surface Pro via VNC and Linux

For various reasons, for example having another day job, being a father, and travelling, has made me look for alternative ways to access my digital tools and workstation more flexibly.

If you just need a mobile solution and can not do technical trouble shooting with Linux you could simply buy a more high end laptop/Tablet and run ZBrush natively in Windows.

After successfully trying out the MS Surface Go 2 2-in-1 tablet/laptop using a Linux system on a USB-memory I was able to attain a cheap Surface Pro 2017. A dual boot system was installed with Windows 10 and Xubuntu (Ubuntu with XFCE).

Although it is possible to start high end software on a Surface Pro I am more interested in accessing my workstation with all its computing power such as CPU:s, GPU:s and storage. My Surface Pro is rather limited in performance when comparing with a workstation.

Using TurboVNC viewer on Xubuntu it is possible to access a TurboVNC server on a workstation. For that an SSH-tunnel was used with an identity file for RSA-encrypted data transfer through the local network. It also works via Internet with for example port forwarding. A great feature of TurboVNC server is that it can support pressure sensitivity for devices like Wacom or the Wintab driver in Wine.

As a side note, with the additional software VirtualGL it is also possible to run OpenGL software remotely. To access for example Nvidia drivers via VirtualGL an additional virtual display can be started (via Xorg).

Examples of benefits:

  • fast enough interaction and view updates with remote access through wireless network for the tablet (such as 5 GHz)
  • no noise work environment (for example the fans of a workstation)
  • a truly mobile access to a workstation (requires low latency internet connection with at least 25 Mbps)
  • battery support
  • touch screen support
  • pen with pressure support
  • A low end Surface Go or Surface Pro should be adequate for VNC

Not supported:

  • Sound through VNC (there exist other techniques that support remote sound access but it is not known if pen pressure is included.

Although this mobile work method can not compete with or replace a full desktop experience, it can provide another dimension of experiencing digital tools in a more casual context.

If you are interested to do something similar with Linux please do not ask me to provide a step-by-step tutorial. Doing this on Linux to Linux will require you to study the techniques highlighted in the description above. Since you read this thread I expect you to be familiar with Linux systems. To accomplish the above with VNC you should be prepared to do some trouble shooting.

1 Like

Hello, ZB on Linux enthusiasts.

ZBrush 2021.6.4 has been released and FINALLY, the lightbox issue has been solved.
now ZB runs PERFECTLY on Linux via WINE!

I got Windows version of ZBrush 2021.6.4 running on Pop!_OS 20.10 with wine 6.6.

1 Like

Does Decimation works for you?