pmndrs / pmndrs/three-stdlib

.obj loaded Model materials are off

Open
#334 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
JavaScript
Stars
858
Forks
144
PR merge metrics
No merged PRs in 30d

Description

  • three version: 0.160.0
  • @types/three version: 0.160.0
  • three-stdlib version: 2.28.12
Problem description:

Materials loaded with the MTLLoader and OBJLoader are not the same as threes.js' loaders.
Colours are different between the two.
this is colours loaded with three.js mtl and obj loader:
Screenshot 2024-01-11 142935

and this is colours loaded with three-stdlib mtl and obj loader:
Screenshot 2024-01-11 142928

Suggested solution:

I believe we are missing the commit: https://github.com/mrdoob/three.js/commit/f49819bc21babf06c935f902f64629daab9f8ddc
where colours are converted from SRGB to Linear. There might be something else but I believe this could be it.

Thank you!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the MTLLoader and OBJLoader implementations and compare their material-color handling with the referenced three.js commit f49819bc21babf06c935f902f64629daab9f8ddc. Done means materials loaded through three-stdlib produce the same colors as the corresponding three.js loaders.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, three.js
Domain
computer-graphics
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.