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

Documentation Reorganization #1194

Open
pvcraven opened this issue Apr 16, 2022 · 5 comments
Open

Documentation Reorganization #1194

pvcraven opened this issue Apr 16, 2022 · 5 comments

Comments

@pvcraven
Copy link
Member

pvcraven commented Apr 16, 2022

Reorganize the documentation into the following four sections.

The programming guide and the tutorials will be made into printable/downloadable PDFs.

  • Programming Guide

    • Installation on Windows, Mac, Linux, and Raspberry Pi
    • Basic drawing commands (this is where we might need to use pyglet shapes instead?)
    • Sprites
      • Using Sprites
      • Using sprite lists
      • Drawing sprites in layers
      • Textures
      • Texture Atlas
      • Sprite animation
      • Sprite movement
      • Avoid spawning sprites on walls
      • Sprite drag and drop
      • Fixing edge artifacts
    • Sprite physics
      • Sprite collisions
        • Collision detection methods (Normal, Spatial, GPU)
      • Simple physics engine
      • Pymunk
    • Working with views
      • Adding instruction screen, game over, pause screen
    • Working with the camera
      • Scrolling around
      • Full screen
      • Window resizing
      • Camera shake, panning
    • Tile map editor support
      • Loading maps
      • Animation
      • Custom hit boxes
      • Object layer
    • Sound support
      • Streaming vs. Loading
    • GUI
      • GUI stuff here
    • OpenGL
      • OpenGL and the pipeline (How data flows)
      • High level explanation of each opengl type we have (buffer, texture, geometry, etc etc)
      • A library explaining various rendering techniques to get people started
    • Distributing your game via PyInstaller
    • Performance tips
      • Arcade performance information
    • Headless Arcade
    • Vertical synchronization
    • Arcade vs. Pygame
    • Contributing to Arcade
      • Release check-list
  • Tutorials

    • Simple Platformer
    • Pymunk Platformer
    • Using Views for Menus and Game Over Screens
    • Solitaire Game
    • Shadertoy Glow
    • Shadertoy Particles
    • Using the CRT filter
    • GPU particle burst
    • Ray-casting Shadows
    • Lights
  • Example Code

  • API Docs

Certain items would remain outside these sections, but still appear on the homepage:

  • Social links
  • Example games
  • Links to GitHub
  • Release notes
  • Diverse coders section
@einarf
Copy link
Member

einarf commented Apr 16, 2022

Definitely. Texture, Sprites, SpriteList etc etc. They are closely linked so there can be other categories like "Drawing sprites best practices" etc. It will probably make things easier to explain. It can quickly become too much stuff at the same time unless separated properly.

I also want an opengl sub-section explaining:

  • OpenGL and the pipeline (How data flows)
  • High level explanation of each opengl type we have (buffer, texture, geometry, etc etc)
  • A library explaining various rendering techniques to get people started

@pvcraven
Copy link
Member Author

I also want an opengl sub-section explaining:

Ok, I updated it with this.

* A library explaining various rendering techniques to get people started

I'm not sure what this means?

@einarf
Copy link
Member

einarf commented Apr 16, 2022

I'm not sure what this means?

After explaining opengl concepts the hardest part is knowing what you can do with it. The idea was to make a "Techniques" section showing various use cases for tranforms, frag shader, geo shader, compute shader. There's a lot you can cover.

This would be a way for more advanced users to get started with the lower level stuff.

@pushfoo
Copy link
Member

pushfoo commented Apr 26, 2022

Improving installation doc is on my todo list.

Is there a way to manually set where the next/prev buttons on the pages go? It would make installation instructions easier to follow for absolute beginners by avoiding linking to the start of instructions for another OS.

@pushfoo
Copy link
Member

pushfoo commented Jun 5, 2022

One other area we should look into is curating links to resources on math topics, or find a good source that's already doing that.

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

No branches or pull requests

3 participants