VOOZH about

URL: https://www.nuget.org/packages/RaylibMaterial/

⇱ NuGet Gallery | RaylibMaterial 0.1.0




RaylibMaterial 0.1.0

dotnet add package RaylibMaterial --version 0.1.0
 
 
NuGet\Install-Package RaylibMaterial -Version 0.1.0
 
 
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RaylibMaterial" Version="0.1.0" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="RaylibMaterial" Version="0.1.0" />
 
Directory.Packages.props
<PackageReference Include="RaylibMaterial" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add RaylibMaterial --version 0.1.0
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: RaylibMaterial, 0.1.0"
 
 
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package RaylibMaterial@0.1.0
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=RaylibMaterial&version=0.1.0
 
Install as a Cake Addin
#tool nuget:?package=RaylibMaterial&version=0.1.0
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

RaylibMaterial

In Raylib, applying materials to models require numerous actions: load shaders, load images, set shader uniform values, apply shader to model...

The goal of this project is to simplify the applying materials to our models. For that purpose, I propose to generate "material packages" using an easy to use editor. And then to apply such created packages to any of your models.

Such editor looks like:

The produced packages are simple zip files that contain whatever is needed for Raylib to work:

It is based on RayLib-cs project.

Status of the project

0.1 is still under developer. You can play with it and give feedbacks but the library and editor are not fully operational.

The remaining tasks for this first release are:

  • make easy to edit and compile shaders
  • support of models with multiple materials
  • handle all kinds of uniform types (vec2, vec3...)
  • preview material using a 3D model stored on disk (today only primitives are properly supported)
  • use a sky box instead of a plane for background
  • handle versioning of packages
  • produce nuget package for library
  • Cover 100% of code of the library with tests
  • Add documentation of the editor and the library
  • Improve existing sample and how to apply produced packages to your projects

How to build and use

  • Open and build RaylibMaterial.sln
  • Tested with VS2022 (17.14.14)

Structure of VS solution

  • Library is the main project handling material
  • Library.Tests is the associated test project
  • Editor can be used to create or modify custom material packages
  • ConsumerSampleApp shows how to integrate the library into your projects

Main dependencies

  • .NET 8: cross-platform framework for building modern apps and powerful cloud services.
  • Newtonsoft.Json: for manipulation of json.
  • ImGui.NET: .NET wrapper for ImGui
  • Raylib-cs: C# bindings for raylib
  • rlImgui-cs: Glue to render ImGui using Raylib
  • NLog: NLog is a free logging platform for .NET
  • ImGui.NET.ToolBox: ImGui.NET.ToolBox a set of controls and helpers for ImGui.NET.

Other ones:

Product Versions Compatible and additional computed target framework versions.
.NET net8.0 net8.0 is compatible.  net8.0-android net8.0-android was computed.  net8.0-browser net8.0-browser was computed.  net8.0-ios net8.0-ios was computed.  net8.0-maccatalyst net8.0-maccatalyst was computed.  net8.0-macos net8.0-macos was computed.  net8.0-tvos net8.0-tvos was computed.  net8.0-windows net8.0-windows was computed.  net9.0 net9.0 was computed.  net9.0-android net9.0-android was computed.  net9.0-browser net9.0-browser was computed.  net9.0-ios net9.0-ios was computed.  net9.0-maccatalyst net9.0-maccatalyst was computed.  net9.0-macos net9.0-macos was computed.  net9.0-tvos net9.0-tvos was computed.  net9.0-windows net9.0-windows was computed.  net10.0 net10.0 was computed.  net10.0-android net10.0-android was computed.  net10.0-browser net10.0-browser was computed.  net10.0-ios net10.0-ios was computed.  net10.0-maccatalyst net10.0-maccatalyst was computed.  net10.0-macos net10.0-macos was computed.  net10.0-tvos net10.0-tvos was computed.  net10.0-windows net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0 253 10/2/2025

first version