• Español
  • Documentación 3DCoat
  • Chapters
    • Introducción a 3DCoat
    • Empezando
    • Interfaz y Navegación
    • Componentes del Brush
    • Espacios de trabajo Habitaciones
    • Scripting y Core API
    • Preguntas y respuestas
    • licensing
    • Tutoriales de formación
  • Pilgway
  • Products
    • 3DCoat
    • 3DCoatTextura
    • 3DCoatPrint
    • PBRLibrary
  • Blog Posts
    • Creating 3D Character Using 3DCoat
  • Store
  • Español Español
    • English English
    • Українська Українська
    • Deutsch Deutsch
    • Français Français
    • 日本語 日本語
    • Русский Русский
    • 한국어 한국어
    • Polski Polski
    • 中文 (中国) 中文 (中国)
    • Português Português
    • Italiano Italiano
    • Suomi Suomi
    • Svenska Svenska
    • 中文 (台灣) 中文 (台灣)
    • Dansk Dansk
    • Slovenčina Slovenčina
    • Türkçe Türkçe
    • Nederlands Nederlands
    • Magyar Magyar
    • ไทย ไทย
    • हिन्दी हिन्दी
    • Ελληνικά Ελληνικά
    • Tiếng Việt Tiếng Việt
    • Lietuviškai Lietuviškai
    • Latviešu valoda Latviešu valoda
    • Eesti Eesti
    • Čeština Čeština
    • Română Română
    • Norsk Bokmål Norsk Bokmål
  • Documentación 3DCoat
  • Chapters
    • Introducción a 3DCoat
    • Empezando
    • Interfaz y Navegación
    • Componentes del Brush
    • Espacios de trabajo Habitaciones
    • Scripting y Core API
    • Preguntas y respuestas
    • licensing
    • Tutoriales de formación
  • Pilgway
  • Products
    • 3DCoat
    • 3DCoatTextura
    • 3DCoatPrint
    • PBRLibrary
  • Blog Posts
    • Creating 3D Character Using 3DCoat
  • Store
  • Español Español
    • English English
    • Українська Українська
    • Deutsch Deutsch
    • Français Français
    • 日本語 日本語
    • Русский Русский
    • 한국어 한국어
    • Polski Polski
    • 中文 (中国) 中文 (中国)
    • Português Português
    • Italiano Italiano
    • Suomi Suomi
    • Svenska Svenska
    • 中文 (台灣) 中文 (台灣)
    • Dansk Dansk
    • Slovenčina Slovenčina
    • Türkçe Türkçe
    • Nederlands Nederlands
    • Magyar Magyar
    • ไทย ไทย
    • हिन्दी हिन्दी
    • Ελληνικά Ελληνικά
    • Tiếng Việt Tiếng Việt
    • Lietuviškai Lietuviškai
    • Latviešu valoda Latviešu valoda
    • Eesti Eesti
    • Čeština Čeština
    • Română Română
    • Norsk Bokmål Norsk Bokmål
Expand All Collapse All
  • Introducción a 3DCoat
  • Empezando
    • System requirements
    • Why 3DCoat is Unique?
    • Activando 3DCoat
    • error de inicio
      • Startup error Mac
    • Color management
    • Upgrading permanent license
    • Linux Setup
      • Linux initial setup per-user installation
      • Linux initial setup for system
      • Tablet setup
      • To GTK3 from GTK2
      • Error libicuuc.so.70
    • Estructura de carpetas
      • Custom documents folder
    • Diferentes formas de “resolución”
    • Tablet on Window
    • Import y Export
    • Applinks en 3DCoat
      • Enlace de aplicación Blender
        • Blender with the Applink in Linux
      • Blender 4.2/3/4/5 applink
      • Max Applink
      • Houdini applink
      • Lightwave uplink
  • Navigation
    • Diálogo de apertura (menú de inicio rápido)
    • Panel de navegación
    • Cámara y Navegación
      • Customize Navigation as Blender
    • Viewport Navigation Gizmo
    • Left tool panel
    •  Activity Bar
    • Navegación con dispositivos 3DConnexion
      • How to compile Spacenavd on non Ubuntu distro
    • Space Bar Menu
    • Stylus doesn’t work in sculpting
    • Teclas de acceso directo
  • Interfaz y Navegación
    • Menú Archivo
    • Menú de edición
      • Calculate Curvature
      • Calculate Occlusion
      • Light Baking Tool
      • preferencias
    • Ver menú
    • Simetría
    • Textures
    • Calculate
    • Menú de capas
    • Menú de congelación
    • Hide
    • Bake
    • Curvas 2022
      • Menú Curvas
      • Curves Properties RMB
      • Rellenar con capa de malla
      • Scale of imported curves
    • Menú de ventanas
      • Paneles emergentes de Windows con pestañas
      • Controles deslizantes
    • Scripts
    • Addons
    • Capture
    • Menú de ayuda
    • personalización
    • Modificar o Crear nueva Sala
  • Componentes del Brush
    • Barra superior de Brush
    • Cepillos uso general
      • Crear pinceles y calcomanías
      • Hacer alfa a partir de la escultura actual
      • Crear un Brush a partir de un objeto 3D
      • Create brushes based on Curves
      • Load photoshop .abr brushes
    • trazos
      • Menú emergente de curvas
    • Opciones de Brush
    • Limitador de condiciones
    • Panel de tiras
    • Panel de plantillas
    • Materiales inteligentes
      • Agregar nuevas imágenes o materiales
      • Adjuntar un material inteligente a una capa
      • Import Quixel Megascans
    • Cómo crear ajustes preestablecidos para Brush
  • Espacios de trabajo Habitaciones
    • Painting
      • Painting de texturas y modos
        • Painting Per-Pixel
        • Painting de desplazamiento (Micro-Vertex)
        • Painting Ptex
        • Painting de Superficies (Polipintura)
      • Importación a la sala de Painting
        • Initial CC subdivision
        • UV Set smoothing
        • Sharp (hard) edge
        • Bloquear normales
        • Cargar nuevo diseño UV después de cambios de modelo
        • DAZ Genesis models into 3DCoat
        • ID map
      • Menús del espacio de trabajo de Painting
        • Edit menu
        • Menú Texturas
          • Herramientas Baking texturas
        • Esconder
        • Menú para la Bake Paint
        • El selector de color
      • Surface Materials
      • Barra superior para la Painting
      • El panel de capas
        • El panel de fusión
        • Layer and Clipping Masks
      • Herramientas de la sala de Painting
      • Opacidad - Transparencia
      • Ajustar el espacio de trabajo
        • Conjunto de herramientas de ajuste
        • Exportación desde Tweak Room
      • Panel de vista previa de máscara/material
      • Exportación desde la sala de Painting
    • Espacio de trabajo UV
      • Barra superior UV
      • Panel de herramientas izquierdo UV
      • Panel de vista previa UV
      • Ejemplo de flujo de trabajo UV
      • Importación a la sala UV
      • Exportando desde la Sala UV
    • Retopología
      • Importando a la Sala Retopo
      • Menú Malla Retopo y Menú Hornear
        • Modo espejo virtual
      • Bake menu
        • Treat Poly Groups as Paint Objects
        • Baking guide
      • Herramienta Trazos en Retopología
      • Barra superior
        • Seleccionar geometría
      • Panel de herramientas izquierdo en la sala de Retopología
        • Propósito general y función
        • Agregar Geometría
        • Herramientas de ajuste Retopo
        • Herramientas UV
        • Comandos para sala de Retopología
      • AUTORETOPO
        • Autopo guide
      • Grupos polivinílicos
    • Esculpir
      • Sculpt Layer
      • Esculpir árbol
      • Opciones de Brush para esculpir
      • Top Bar
      • motor de Brush
      • Submenú Geometría
      • Esculpir menú de "clic derecho"
      • sombreadores
      • modo Voxel
        • Escultura pura de Voxel
        • Densidad y Resolución
        • Motor de arcilla
        • Herramientas de Voxel
        • Herramientas de superficie en Voxels
        • Herramientas de ajuste de Voxel
        • Painting volumétrica
        • Herramientas de objetos de Voxel
      • modo de superficie
        • Herramientas de superficie
        • Herramientas personalizadas de superficie
        • Surface Layer
        • Herramientas de ajuste de superficie
        • Painting de superficies
        • Herramientas de objetos de superficie
        • Resolución multinivel
          • Multires tools
          • Multires adjust
          • Multires commands
      • Esculpir curvas
        • Curvas Spline
        • Splines model creation
      • Desplazamiento vectorial
      • Herramientas de transformación de superficies
        • Herramientas de transformación de Voxel
        • Instancer
        • Move
        • Pose
        • Fit
        • Reproject
        • Surface Array
      • Primitivas de Voxel y herramientas de Import
      • Booleanos en vivo
      • Comandos para la sala Sculpt
      • Import a Sculpt Room
      • Exportación desde Sculpt Room
    • Prestar
      • Comparison of different roughness values
      • Funciones del panel de procesamiento
      • Placa giratoria
      • Fakebake la iluminación -sin PBR-
    • Factures
      • flujo de trabajo
    • más simple
    • Modelado
      • Mesh Menu
      • Panel de herramientas izquierdo en la sala de modelado
        • Agregar geometría
          • Seleccionado
        • Retocar
        • Smart Hybrid
        • UV
          • Comandos
        • Malla entera
      • Ejemplo de superficie loft de Fluffy
      • Bloqueo por Poeboi
      • Import Zbrush Polygroups for UV mapping
    • Kitbash - Creación rápida de modelos 3D
      • Create kitbash
      • Left tool panel Kitbash
    • 3DPrint
    • Photogrammetry
      • How to install Reality Capture
      • Reality Capture doesn’t show up ?
    • Malla a habitación NURBS
    • Nodes
      • Sculpt shaders Biblioteca de nodos
      • Open PBR
  • Scripting y Core API
    • Scripting
    • Core API
    • API de Python
    • Extensions and Addons
  • 3DCoatPrint gratis

Linux Setup

1607 views 0

Written by Carlos
June 21, 2024

Hello, dear Linux users!

The ABI incompatibility that we have encountered was the last straw that forced me to switch to Flatpak.

Here is the link to the Flatpak build with a detailed manual on installation:
https://pilgway.com/~sergyi/links-Linux.html

With help from Copilot, I have found and fixed a long-standing problem: the inability to run 3DCoat from the launcher using a Desktop file. After installing 3DCoat as Flatpak, you will see the 3DCoat icon in your Linux launcher.
This build can be unstable.
I see reports from Windows users complaining about the instability of 2026.01 in general. Please consider this build as a packaging test.

Regarding GTK2. A year ago, I ported the code to GTK3. Everything worked except one thing: 3DCoat’s internal modal dialogs, which it draws itself (not system modal dialogs), crashed the app. For more than a month, I investigated the problem without working on anything else. But because of the enormous size of the 3DCoat source code, I wasn’t able to determine the cause.
I reverted to the GTK2 code only because of those internal modal dialogs, and I notified the company that we should implement them differently. I have worked around the file dialog problem by building 3DCoat on Pop!_OS instead of Ubuntu.
The file dialog problem is another ABI incompatibility issue that Flatpak should now solve.

Some questions I have for you. As you know, I have developed the low-level foundation on which 3DCoat runs. That foundation isolates 3DCoat tools from the platform. To do that, I have rewritten each low-level function three times using different API on each platform: WinAPI on Windows, Cocoa on macOS, and GTK on Linux. That process is tedious because you do the same work three times. Moreover, you have to build the project source code three times with different compilers, which introduces optimization errors. In the case of Linux, you have to encounter ABI incompatibility between distributions. Given the complexity of this process, I was looking for an alternative.

Accidentally, in 2021, I learned about WebAssembly and fell in love with it. WebAssembly allows application developers to use a single API and to make a single build that runs everywhere. WebAssembly effectively solves the problem with updates, because users always run the latest uploaded build. I have ported the low-level foundation (let’s call it “engine”) to WebAssembly with deep modifications. You can see it here in action in my game:
https://underseagame.com
I developed this game in 2011 with an artist for iOS, but I have now ported it to my new WebAssembly engine.
What do you think about the idea of reimplementing some 3DCoat functionality on this new WebAssembly engine?
Please consider the real-world limitations of WebAssembly: single-threaded and 32-bit, whereas multithreading and 64-bit support are uneven and experimental. Obviously, the full 3DCoat source code is not portable to WebAssembly because it was not designed for it.
But some tools, some functions, could be.

How do you see the 3DCoat web tool? What essential functions should it have? Before raising this question in the company, I would like to hear your expert opinions.

Sergyi

Tags:linux

Was this helpful?

Yes  1 No
Related Articles
  • Open PBR
  • Extensions and Addons
  • Surface Layer
  • Error libicuuc.so.70
  • Space Bar Menu
  • Surface Materials
Previously
Upgrading permanent license
Up Next
Linux initial setup per-user installation
AI:
Hi! How can I help you?
Attention: This is a beta version of AI chat. Some answers may be wrong. See full version of AI chat