Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump version to 0.5 (breaking version) #226

Merged
merged 6 commits into from
Nov 18, 2024
Merged

Bump version to 0.5 (breaking version) #226

merged 6 commits into from
Nov 18, 2024

Conversation

asinghvi17
Copy link
Contributor

No description provided.

@t-bltg
Copy link
Member

t-bltg commented Oct 30, 2024

Could we wait for the merge of #227, since this is a breaking release ?

@asinghvi17
Copy link
Contributor Author

Sure, but that would probably merit a patch release from before the refactor with a deprecation warning as well?

@t-bltg
Copy link
Member

t-bltg commented Oct 30, 2024

@asinghvi17, done in 34f40a2.

@ffreyer
Copy link
Collaborator

ffreyer commented Nov 4, 2024

I talked with Simon and we think it's better to just do the Tesselation -> Tessellation change with the breaking release.

@ffreyer ffreyer closed this Nov 18, 2024
@ffreyer ffreyer reopened this Nov 18, 2024
@ffreyer ffreyer merged commit 2407d53 into master Nov 18, 2024
8 checks passed
@ffreyer ffreyer deleted the as/breaking_version branch November 18, 2024 15:07
@ffreyer
Copy link
Collaborator

ffreyer commented Nov 19, 2024

In case people come here for some notes on what changed/how to update:

Changes that could break things

  • Tesselation -> Tessellation
  • meta() removed: Mesh(meta(kwargs...), faces) -> Mesh(faces; kwargs...)
  • metafree() removed: no replacement needed
  • mesh.normals -> mesh.normal
  • mesh(..., normals = ...) -> mesh(..., normal = ...)
  • Mesh type name/structure has been simplified. See basic_types.jl or just check by hand
  • Rect2 now generates coordinates in counter-clockwise order
  • Cylinder , Rect3, Pyramid now generate FaceView's. You can remove these with expand_faceviews(mesh). Some consequences:
    • coordinates(::Rect3) are no longer duplicated
    • normals(::Rect3) and texturecoordinates(::Rect3) are FaceViews to avoid duplication. If you need them synchronized with coordinates use normals(expand_faceviews(uv_normal_mesh(Rect3(...))))
  • MeshIO.jl may output a MetaMesh for obj files now. This includes additional non-vertex data (e.g. materials). The "raw" mesh is in metamesh.mesh.
  • MeshIO.jl may generate a Mesh with FaceViews

Other changes

  • Cylinder no longer renders with rounded caps (due to no longer sharing normals between mantle and caps)
  • merge(meshes) now also sets mesh.views which acts as a collection of index ranges into mesh.faces corresponding to the input meshes. split_mesh() can now revert a merge.
  • mesh(input_mesh; pointtype, facetype, vertex_attributes...) can be used to change the pointtype or facetype, or add additional vertex attributes to a given mesh. (This will create a new mesh)
  • added face_normals(positions, faces) for generating per-face normals (uses FaceView)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants