Skip to content
New issue

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

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

Already on GitHub? # to your account

Physics Tutorial Updates #330

Merged
merged 24 commits into from
Jan 6, 2025
Merged

Conversation

ShaunR1991
Copy link

@ShaunR1991 ShaunR1991 commented Dec 8, 2024

Description

This pull request includes significant updates and additions to enhance the SplashKit tutorial series and user experience:

  • Reviewed and adjusted the existing physics tutorials (0 through 5) to improve clarity, update content, and align with project standards.
  • Introduced 3 new raycasting tutorials:
    • Basics
    • Illumination
    • 3D Projection
  • Added .cpp files to simplify the corresponding .mdx files and streamline integration with SplashKit Online.
  • Implemented a new component, SKOTutorialButton.astro, for enabling SplashKit Online functionality directly in tutorials.
  • Added relevant visual aids, including new GIFs and images, to demonstrate concepts in the tutorials.

These changes aim to improve accessibility, user engagement, and the overall learning experience for SplashKit users.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Documentation (update or new)

How Has This Been Tested?

  • Verified SKOTutorialButton.astro functionality by testing it with the new .cpp files in SplashKit Online.
  • Conducted local builds (npm run build) and previews (npm run preview) to ensure tutorials and SplashKit Online integration function as expected.
  • Reviewed rendered .mdx files for formatting, consistency, and accurate SplashKit API references.
  • Tested visuals (GIFs and images) for correct rendering in multiple browsers.

Testing Checklist

  • Tested in latest Chrome
  • Tested in latest Firefox - SplashKit Online C++ execution is bugged on Firefox when running inside an iFrame. Looks like user/filesystem events get blocked from passing, so demos that use keyboard/mouse, and demos with resources, don't work properly. Double-clicking on a resource (like a readme.txt) inside the iFrame and allowing popups makes it work, however the SKO team are investigating this further. At this time, any Chromium browsers will work fine.
  • npm run build
  • npm run preview

Checklist

If involving code

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings

If modified config files

  • I have checked the following files for changes:
    • package.json
    • astro.config.mjs
    • netlify.toml
    • docker-compose.yml
    • custom.css

Folders and Files Added/Modified

  • Added:

    • GIFs:
      • public/gifs/guides/physics/2d-3d-projection.gif
      • public/gifs/guides/physics/raycasting-basics-1.gif
      • public/gifs/guides/physics/raycasting-basics-2.gif
      • public/gifs/guides/physics/raycasting-illumination.gif
    • Images:
      • src/content/docs/guides/physics/images/2d-3d-projection-1.png
      • src/content/docs/guides/physics/images/2d-3d-projection-2.png
      • src/content/docs/guides/physics/images/2d-3d-projection-3.png
      • src/content/docs/guides/physics/images/2d-3d-projection-4.png
      • src/content/docs/guides/physics/images/2d-3d-projection-5.png
      • src/content/docs/guides/physics/images/2d-3d-projection-6.png
      • src/content/docs/guides/physics/images/2d-3d-projection-7.png
      • src/content/docs/guides/physics/images/raycasting-light-1.png
    • Tutorials:
      • src/content/docs/guides/physics/6-raycasting-basics.mdx
      • src/content/docs/guides/physics/7-raycasting-light.mdx
      • src/content/docs/guides/physics/8-3d-projection-raycasting.mdx
    • Code Files:
      • public/guides/physics-code-files/collision-detection-1.cpp
      • public/guides/physics-code-files/collision-detection-2.cpp
      • public/guides/physics-code-files/gravity-1.cpp
      • public/guides/physics-code-files/raycasting-2d-3d.cpp
      • public/guides/physics-code-files/raycasting-2d.cpp
      • public/guides/physics-code-files/raycasting-3d.cpp
      • public/guides/physics-code-files/raycasting-basics-1.cpp
      • public/guides/physics-code-files/raycasting-light-1.cpp
    • Component:
      • src/components/SKOTutorialButton.astro
  • Modified:

    • Tutorials:
      • src/content/docs/guides/physics/0-introduction-to-vectors.mdx
      • src/content/docs/guides/physics/1-vector-magnitudes.mdx
      • src/content/docs/guides/physics/2-vector-arithmetic.mdx
      • src/content/docs/guides/physics/3-vector-geometry-angles.mdx
      • src/content/docs/guides/physics/4-collision-detection-using-vectors.mdx
      • src/content/docs/guides/physics/5-collisions-and-gravity.mdx
    • Styles:
      • src/styles/custom.css

@omckeon omckeon changed the base branch from add/physics-tutorials to main December 8, 2024 06:23
@omckeon omckeon changed the base branch from main to add/physics-tutorials December 8, 2024 06:24
@ShaunR1991 ShaunR1991 closed this Dec 8, 2024
@ShaunR1991 ShaunR1991 reopened this Dec 8, 2024
Copy link

netlify bot commented Dec 8, 2024

Deploy Preview for splashkit-io failed.

Name Link
🔨 Latest commit 8cb31aa
🔍 Latest deploy log https://app.netlify.com/sites/splashkit-io/deploys/677b7a38b64a100008fb4042

@omckeon omckeon self-assigned this Jan 6, 2025
@omckeon omckeon changed the base branch from add/physics-tutorials to main January 6, 2025 06:25
Copy link

@omckeon omckeon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent work Shaun!

@omckeon omckeon merged commit ccbc141 into thoth-tech:main Jan 6, 2025
0 of 4 checks passed
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants