Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. Hey All, I made a header only C++ library where it's 1 line of code to init, then you can start writing to pixels on the screen.

Hey All, I made a header only C++ library where it's 1 line of code to init, then you can start writing to pixels on the screen.

Scheduled Pinned Locked Moved Uncategorized
30 Posts 20 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • lunaticdancer@mastodon.gamedev.placeL lunaticdancer@mastodon.gamedev.place

    @demofox oh this is marvelous, great work!

    How's the performance overhead? I imagine it's not too bad since this seems to mostly be a fancy data serialization wrapper for DX12 so probably the heaviest part of this is the user iterating over the pixel array (I'm pretty new to graphics programming myself so I might be off-base here).
    Also any plans to port the library to C?

    demofox@mastodon.gamedev.placeD This user is from outside of this forum
    demofox@mastodon.gamedev.placeD This user is from outside of this forum
    demofox@mastodon.gamedev.place
    wrote last edited by
    #21

    @LunaticDancer its real fast, no overhead in the library.
    The pixel values persist across frames, so you could do "dirty rectangles" instead of updating every pixels every frame. If you knew which pixels were updated each frame, you could copy just those regions.
    The examples run like pixel shaders as well and iterate overall pixels, but you could blit rectangles instead.
    But its real fast. These demos are like 0.3ms per frame on my machine in release.

    lunaticdancer@mastodon.gamedev.placeL 1 Reply Last reply
    0
    • demofox@mastodon.gamedev.placeD demofox@mastodon.gamedev.place

      @LunaticDancer its real fast, no overhead in the library.
      The pixel values persist across frames, so you could do "dirty rectangles" instead of updating every pixels every frame. If you knew which pixels were updated each frame, you could copy just those regions.
      The examples run like pixel shaders as well and iterate overall pixels, but you could blit rectangles instead.
      But its real fast. These demos are like 0.3ms per frame on my machine in release.

      lunaticdancer@mastodon.gamedev.placeL This user is from outside of this forum
      lunaticdancer@mastodon.gamedev.placeL This user is from outside of this forum
      lunaticdancer@mastodon.gamedev.place
      wrote last edited by
      #22

      @demofox okay yeah, that is one sexy frame budget. I guess it's really on library's user not to squander the performance lol

      1 Reply Last reply
      0
      • demofox@mastodon.gamedev.placeD demofox@mastodon.gamedev.place

        Hey All, I made a header only C++ library where it's 1 line of code to init, then you can start writing to pixels on the screen.

        I call it thirteen.h, as it is inspired by the simplicity of the 13h days.

        Examples include a mandelbrot viewer and a playable mine sweeper game.

        MIT licensed.

        Link Preview Image
        GitHub - Atrix256/Thirteen: Header only minimalist interface to graphics, inspired by the olden days of mode 13h

        Header only minimalist interface to graphics, inspired by the olden days of mode 13h - Atrix256/Thirteen

        favicon

        GitHub (github.com)

        termoose@snabelen.noT This user is from outside of this forum
        termoose@snabelen.noT This user is from outside of this forum
        termoose@snabelen.no
        wrote last edited by
        #23

        @demofox ohhhh love this, was just looking for something similar and found good old tinyptc dead in the water. This looks great!

        1 Reply Last reply
        0
        • demofox@mastodon.gamedev.placeD demofox@mastodon.gamedev.place

          Hey All, I made a header only C++ library where it's 1 line of code to init, then you can start writing to pixels on the screen.

          I call it thirteen.h, as it is inspired by the simplicity of the 13h days.

          Examples include a mandelbrot viewer and a playable mine sweeper game.

          MIT licensed.

          Link Preview Image
          GitHub - Atrix256/Thirteen: Header only minimalist interface to graphics, inspired by the olden days of mode 13h

          Header only minimalist interface to graphics, inspired by the olden days of mode 13h - Atrix256/Thirteen

          favicon

          GitHub (github.com)

          sonnybonds@mastodon.gamedev.placeS This user is from outside of this forum
          sonnybonds@mastodon.gamedev.placeS This user is from outside of this forum
          sonnybonds@mastodon.gamedev.place
          wrote last edited by
          #24

          @demofox Looks great, love the name. 😄

          I was going to say wouldn't this make sense to have as just a single .h _and_ a single .cpp, but I guess a huge use case is just getting up and running very quickly and then you might not have a build system anyway.

          1 Reply Last reply
          0
          • demofox@mastodon.gamedev.placeD demofox@mastodon.gamedev.place

            Hey All, I made a header only C++ library where it's 1 line of code to init, then you can start writing to pixels on the screen.

            I call it thirteen.h, as it is inspired by the simplicity of the 13h days.

            Examples include a mandelbrot viewer and a playable mine sweeper game.

            MIT licensed.

            Link Preview Image
            GitHub - Atrix256/Thirteen: Header only minimalist interface to graphics, inspired by the olden days of mode 13h

            Header only minimalist interface to graphics, inspired by the olden days of mode 13h - Atrix256/Thirteen

            favicon

            GitHub (github.com)

            fell@ma.fellr.netF This user is from outside of this forum
            fell@ma.fellr.netF This user is from outside of this forum
            fell@ma.fellr.net
            wrote last edited by
            #25

            @demofox It's super cool, but appears to be Windows-only. If anyone knows an alternative that works on Linux let me know.

            demofox@mastodon.gamedev.placeD 1 Reply Last reply
            0
            • sol_hsa@mastodon.gamedev.placeS sol_hsa@mastodon.gamedev.place

              @root42 SDL backend ought to be pretty easy to make. Would defeat the purpose though, but at least would make things portable 😃

              I love the concept. Keeping it simple will be a struggle, though.

              radgerayden@mstdn.socialR This user is from outside of this forum
              radgerayden@mstdn.socialR This user is from outside of this forum
              radgerayden@mstdn.social
              wrote last edited by
              #26

              @sol_hsa @root42 where it matters it's easy to get SDL installed or you already have it, and the library can dlopen it if you want to keep it at exactly zero compiler flags needed. Probably not worth it but keeping it pure is possible!

              sol_hsa@mastodon.gamedev.placeS 1 Reply Last reply
              0
              • radgerayden@mstdn.socialR radgerayden@mstdn.social

                @sol_hsa @root42 where it matters it's easy to get SDL installed or you already have it, and the library can dlopen it if you want to keep it at exactly zero compiler flags needed. Probably not worth it but keeping it pure is possible!

                sol_hsa@mastodon.gamedev.placeS This user is from outside of this forum
                sol_hsa@mastodon.gamedev.placeS This user is from outside of this forum
                sol_hsa@mastodon.gamedev.place
                wrote last edited by
                #27

                @radgeRayden @root42 Not a problem for someone who can use SDL, but a problem for a newbie using it to learn things.

                1 Reply Last reply
                0
                • demofox@mastodon.gamedev.placeD demofox@mastodon.gamedev.place

                  Hey All, I made a header only C++ library where it's 1 line of code to init, then you can start writing to pixels on the screen.

                  I call it thirteen.h, as it is inspired by the simplicity of the 13h days.

                  Examples include a mandelbrot viewer and a playable mine sweeper game.

                  MIT licensed.

                  Link Preview Image
                  GitHub - Atrix256/Thirteen: Header only minimalist interface to graphics, inspired by the olden days of mode 13h

                  Header only minimalist interface to graphics, inspired by the olden days of mode 13h - Atrix256/Thirteen

                  favicon

                  GitHub (github.com)

                  oblomov@sociale.networkO This user is from outside of this forum
                  oblomov@sociale.networkO This user is from outside of this forum
                  oblomov@sociale.network
                  wrote last edited by
                  #28

                  @demofox thank you very much.

                  1 Reply Last reply
                  0
                  • demofox@mastodon.gamedev.placeD demofox@mastodon.gamedev.place

                    Hey All, I made a header only C++ library where it's 1 line of code to init, then you can start writing to pixels on the screen.

                    I call it thirteen.h, as it is inspired by the simplicity of the 13h days.

                    Examples include a mandelbrot viewer and a playable mine sweeper game.

                    MIT licensed.

                    Link Preview Image
                    GitHub - Atrix256/Thirteen: Header only minimalist interface to graphics, inspired by the olden days of mode 13h

                    Header only minimalist interface to graphics, inspired by the olden days of mode 13h - Atrix256/Thirteen

                    favicon

                    GitHub (github.com)

                    kafumanto@mastodon.gamedev.placeK This user is from outside of this forum
                    kafumanto@mastodon.gamedev.placeK This user is from outside of this forum
                    kafumanto@mastodon.gamedev.place
                    wrote last edited by
                    #29

                    @demofox Kudos! Wonderful idea. And great API 🙂

                    1 Reply Last reply
                    0
                    • fell@ma.fellr.netF fell@ma.fellr.net

                      @demofox It's super cool, but appears to be Windows-only. If anyone knows an alternative that works on Linux let me know.

                      demofox@mastodon.gamedev.placeD This user is from outside of this forum
                      demofox@mastodon.gamedev.placeD This user is from outside of this forum
                      demofox@mastodon.gamedev.place
                      wrote last edited by
                      #30

                      @fell someone said they like this:
                      https://github.com/emoon/minifb

                      1 Reply Last reply
                      0
                      • R relay@relay.infosec.exchange shared this topic
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups