[HN Gopher] Raylib - A simple and easy-to-use library to enjoy v...
___________________________________________________________________
Raylib - A simple and easy-to-use library to enjoy video games
programming
Author : 6581
Score : 271 points
Date : 2023-07-04 08:20 UTC (2 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| mcpackieh wrote:
| This looks awesome. I used to use ncurses for casual game
| development, but this looks like a good way to get back into it.
| kramerger wrote:
| > Written in plain C code (C99) using PascalCase/camelCase
| notation
|
| Is this really something to be proud of? I thought snake_case was
| the common way of writing C?
| unwind wrote:
| There is no solid standard, since it's C we're talking about. I
| would kind of agree that lower case is more common. More
| weirdly (from reading the header [1], I have not worked with
| raylib) the public types and function names are not namespaced
| so if your code already used Texture or Camera those become
| clobbered along with DrawPixel(), InitWindow() and hundreds
| more (the header is ~1,500 lines).
|
| I'm not saying that's _bad_ , and the API seems really nice to
| work with, it's just a bit odd and against the "common wisdom"
| on how to design C libraries.
|
| I guess for a game there might not be a lot of need for other
| libraries, since raylib really does a lot of stuff.
|
| [1]: https://github.com/raysan5/raylib/blob/master/src/raylib.h
| krstffr wrote:
| Since there are no namespaces in C one kind of weird advantage
| of this is that raylib will stay out of your own (proper)
| namespace :)
| z3phyr wrote:
| In the non-unix (BeOS,Amiga,NT) world especially video games
| PascalCase is very popular. But there are exceptions.
| snake_case has a hacky feel to it, camelCase is very enterprisy
| and PascalCase says you are from the wirthian world of video
| games; lisp-case meanse you are into lisp.
| Y_Y wrote:
| You don't see a lot of C written in lisp-case since it parses
| as a subtraction.
| flohofwoe wrote:
| I don't think there's an agreed-upon standard.
|
| There's a couple of 'conventions' to avoid collisions between
| types and names, one would be PascalCase for types and
| camelCase for anything else, another is using snake_case for
| both, but use the _t postfix for types (which is a bit shunned
| upon because the _t postfix is reserved by POSIX - but not the
| C standard).
| kramerger wrote:
| No, not an standard. But most large C projects seem to use
| snake case while most C++ projects use Java-case (which OP
| calls pacal+camel case)
| tnecniv wrote:
| C styling varies quite a bit between libraries in my
| experience. Unfortunately, this means your code often looks
| kind of ugly. The most standard thing I can think of is
| appending _t to structs / types but I'm pretty sure I've used
| libraries that don't do that.
| lionkor wrote:
| appending _t is not allowed under POSIX, for what that's
| worth.
| bibanez wrote:
| I used Raylib to make an interactive simulation of earthquakes I
| had modeled in C++. Very easy to use and it was very rewarding
| sarchertech wrote:
| I've been using the Raylin bindings in Odin for a little side
| project I'm working on. The API is really nice.
|
| Also nice that the Raylib bindings are packaged along with the
| language.
| AlbertoGP wrote:
| Turns out that raylib works quite well with FORTRAN:
|
| "Tic-Tac-Toe in Fortran with Raylib":
| https://www.twitch.tv/videos/1861499073
|
| "Fortran is the Next Rust":
| https://www.twitch.tv/videos/1864047709
|
| https://github.com/tsoding/tic-tac-toe-fortran-raylib
| kalekold wrote:
| Raylib is awesome! It reminds me of the old school days of using
| BlitzBASIC to get things drawn on screen because it's easy and so
| much fun. This is how programming used to be, no fuss, just easy
| to use libraries.
|
| I currently use Raylib with Go and the Go bindings[1] to create
| screensavers for Linux and I'm really happy with the results.
|
| I even use it at work to draw interactive infrastructure diagrams
| that animate dependencies, allow controlling start-up etc. It's
| really flexible and simpler than anything else I've found to get
| stuff on-screen. I love it!
|
| [1]: https://github.com/gen2brain/raylib-go
| 4pkjai wrote:
| Raylib is excellent, I've been working on it with the Rust
| bindings to build a little game. Very good API and awesome
| performance. Reminds me of Microsoft's XNA Framework.
| raysan wrote:
| Actually raylib was highly inspired by XNA, it was my main
| reference framework.
| tralarpa wrote:
| Isn't it very inefficient to pass structs like Model by value to
| functions?
|
| I guess it doesn't matter for the matrix operations since they
| will be probably inlined, but what about the bigger functions?
| qbasic_forever wrote:
| Depends what's inside model, if it's just a bunch of pointers
| to meshes, materials, etc. that are allocated and owned
| elsewhere then it's really not a big deal or concern.
| tralarpa wrote:
| What is "a bunch of" nowadays? My knowledge about efficient
| programming is still at the level of 20 years ago :) Looking
| at the DrawModel function, it looks like it's passing around
| 400 bytes of data structures for a model with one mesh
| (assuming that matrix operations are inlined).
| TeaDude wrote:
| Genuinely love this little thing. Its API is really ergonomic and
| it has plenty of things that are missing even from libs like SDL
| like some nice filesystem utilities.
|
| I'd consider it the Godot equivalent for C programmers.
| pests wrote:
| I had watched a YT video of a developer using this library. His
| main complaint was the library polluting the global namespace.
| None of the functions are prefixed and there is a ton of generic
| named functions and it does define some common constants like for
| the colors (RED, BLUE, etc.)
|
| Is this an actual issue or was he just being too judgemental?
| lbussell wrote:
| I've been using the Raylib_cs bindings for C# to write a CHIP-8
| interpreter. It was by far the fastest library to get up and
| running and drawing things to a Window, although my use case is
| extremely simple. I'd likely come back to it if I were to make
| something more complicated!
| cellularmitosis wrote:
| The Janet bindings work great as well. Lots of fun!
| https://github.com/janet-lang/jaylib
| chii wrote:
| and there's even a haxe binding
| https://github.com/haxeui/raylib-haxe
| citeguised wrote:
| Haha, I used it for the exact same thing in C#. And for
| visualising Advent-of-Code output under NodeJS. Just as quick,
| pretty much just an npm-install away. Great community, too!
| ape4 wrote:
| Nice to see the influence of Borland noted.
| abnercoimbre wrote:
| Raysan5 is giving us a masterclass [0] next month on his path to
| making raylib (and how other people might build something
| similar.) Worth checking out - there's an online track for it.
|
| [0] https://handmadecities.com/boston
| raysan wrote:
| Hey! Just saw an increment in raylib github stargazers and raylib
| Discord members and someone point me to HN!
|
| I'm the author of raylib, feel free to ask me about it if you
| want.
| [deleted]
| FrustratedMonky wrote:
| This is a great effort, valuable endeavor. Lot of programmers
| starting out are just overwhelmed by the number of options.
| Having something streamlined to just coding is great.
| raysan wrote:
| Thanks! raylib was originally created to teach gamedev
| programming basis to young arts students, I tried to keep it
| as simple as possible but still focused on code writing and
| able to learn low-level concepts.
| sillysaurusx wrote:
| No questions, just wanted to say thank you for helping to make
| gamedev actually fun again. I had no idea raylib existed till
| now. Unity and Unreal Engine have formed such a depressing
| monoculture that it's no wonder gamedev has gone out of fashion
| in the last decade, and projects like yours help to rekindle
| it.
|
| Oh, one question, I was hoping to convert a bunch of models to
| raylib's format. Right now my exporter goes from Heroes of
| Newerth format to Collada. What would be the best way to import
| from there into raylib? (They're rigged character meshes with
| 15+ animations for each, so it's a bit tricky since there's no
| universal simple format like obj.)
| raysan wrote:
| Thank you very much! Glad you enjoy raylib! I know it's not
| that popular like the big engines but, actually, next month
| raylib will be 10 years old! :D
|
| raylib supports several 3d model formats (obj, gltf/glb, iqm,
| m3d, vox), I think Blender has exporters for most of them.
| Note that some formats support must be enabled in
| raylib/src/config.h file!
| sillysaurusx wrote:
| Okay, I'll try converting the meshes to iqm. Thanks.
|
| I edited in some context -- they're rigged character meshes
| with animations, so a few formats are unusable here (like
| obj) since it can't handle skeletons. Would you guess that
| iqm is the best one to look into out of the ones you
| listed? Otherwise I guess I'll buckle up and look at all of
| them.
|
| (Kind of sheepish that the only formats I've heard of are
| obj and m3d...)
| lasagna_coder wrote:
| Not author but if you're sharing these assets,
| distributing them in the gltf (json/ascii, not binary)
| format is really helpful, as it seems to quite easily be
| imported into tools like blender and threejs.
| sillysaurusx wrote:
| Awesome, thank you! That's really helpful to know. The
| context is over here
| https://news.ycombinator.com/item?id=36613343 but it's
| basically 80 rigged characters with a dozen or so anims,
| along with normal/diffuse/specular maps. The aim is to
| distribute them as widely as possible into as many
| engines and programs as I can, but it's been hard to
| figure out what people actually use for their art and
| engine pipelines nowadays. I'll prioritize gltf.
| Animats wrote:
| > Unity and Unreal Engine have formed such a depressing
| monoculture.
|
| That's because those got finished and shipped. There are a
| huge number of hobbyist small game engines that made it to
| about 80% of useful before the creator got bored. This is the
| "0.x" curse of open source. In the Rust gamedev world, it's
| said that there are five games and fifty engines.
|
| In Rust land, if you want to do something that will get used,
| get behind WGPU, Bevy, and Rend3, and _push_. It won 't be
| easy, because they've solved the easy problems and are now
| working on the hard ones. Progress is way too slow.
| cfiggers wrote:
| Hey Ray! Thank you for raylib. I'm learning a ton just from
| working with it/watching others use it (shout out Tsoding on
| Twitch--did you see he's been calling raylib from Fortran
| recently?).
|
| Not to impose upon you with a technical question, but I have
| one for you if you're up for it.
|
| I'm working with a very small indie language implemented in C
| that has bindings to raylib as a "first party" library/language
| extension. I'm trying to get raygui working with those
| bindings.
|
| If I bundle raygui.h together with the rest of the raylib
| bindings library, everything seems to work. But, if I create a
| separate bindings library for raygui and try to import both
| libraries in the same program, then raygui functions seg fault
| immediately when called (valgrind points to, as an example,
| GuiCheckBox -> DrawRectangle -> rlSetTexture).
|
| I don't know enough about C programming to trace this all the
| way down (I've only learned what I know by trying to cobble
| together extensions for this language) but it seems like when
| raygui is compiled apart from the main raylib bindings library,
| raygui somehow isn't able to share the OpenGL context created
| by the main library? That diagnosis might be a completely off-
| base, but that's what it seems like anyway.
|
| Is this a familiar situation at all that you've seen in any
| other language with bindings for raylib? Any advice for what I
| could try to get this working?
|
| I know it's hard to say anything conclusive without looking at
| actual code, but at the same time I don't want to take up any
| more than the bare minimum of your time.
| raysan wrote:
| Thanks! Glad you are learning with it! That was the original
| objective of the library! Yeah, I learn about Tsoding
| recently and saw some of the videos! Really nice! About the
| issue with raygui you comment, it seems related to calling
| some raygui function before raylib InitWindow(), an OpenGL
| context is required to call rlSetTexture()... ok, I see you
| got to a similar conclusion, yeah, it could be that raygui as
| a separate library can not access the raygui library OpenGL
| context.
|
| My recommendation is to compile raygui together with raylib,
| afair, the default raylib Makefile includes an option to add
| ragui module into raylib on compilation.
| YesBox wrote:
| Hey, I've been checking out raylib on and off for some time.
|
| I'm currently making an isometric pixel art game using SFML
| [0]. Technically this is not possible since SFML does not use a
| depth buffer/z value, but I found a way around this.
|
| I still feel limited in SFML in many ways, like being forced to
| use the color channels to pass custom codes to the GPU for
| shaders (while still needing to use color)
|
| Is it possible to setup a custom vertex array in raylib? Beyond
| world pos, texture pos, and color, is it easy to pass
| additional information to the GPU for customizing assets in the
| shader?
|
| Most (all?) of the examples I've see are 3D, but I imagine
| raylib would have no problem handling a 2D game? Or is
| specifically designed for 3D and 2D is an afterthought/non-
| existant?
|
| [0]
| https://twitter.com/YesboxStudios/status/1676924625912045568
| raysan wrote:
| Actually, afaik most raylib users use it for 2d games/tools;
| it has a batching system to minimize draw calls that works
| very good with sprites (but also used with 3d shapes). About
| shaders, raylib provides a Mesh structure with some
| predefined vertex attribute arrays but you can use them for
| custom data if required. Also, you can use the lower-level
| library rlgl for a more fine grain control over the buffers.
| streamer45 wrote:
| Been using raylib for years to power generative digital paintings
| on embedded systems (RPI and the like). I have been really
| impressed with its performance and accessible API. Plus it's a
| very active and welcoming open source project, kudos to the
| maintainer.
| Renaud wrote:
| Do you have any examples of code and/or art you can share?
|
| I've always been fascinated by generative art.
| Al0neStar wrote:
| After cleaning up my bookmarks i narrowed down my "Creative
| Coding" folder to these.
|
| "Generative Design: Visualize, Program, and Create with
| JavaScript in p5.js":
|
| http://www.generative-gestaltung.de/2/
|
| Articles by Tyler Hobbs specially the one on "Flow Fields" :
|
| https://tylerxhobbs.com/essays/2020/flow-fields
|
| Articles by Sighack specially the one on "Watercolor
| Techniques":
|
| https://sighack.com/post/generative-watercolor-in-processing
|
| "Steve's Makerspace" on Youtube:
|
| https://youtube.com/@StevesMakerspace
| speps wrote:
| I don't know how known it is but Jared Tarbell has an
| excellent gallery: http://www.complexification.net/gallery/
|
| EDIT: nevermind, bio says he co-founded Etsy... he's probably
| well known
| iamleppert wrote:
| Looks like GitHub just killed this project.
| sillysaurusx wrote:
| One big problem holding devs back from enjoying gamedev is a lack
| of quality 3D assets. The engine can be wonderful, but mods were
| successful due to the availability of existing models and
| textures that they can poach from the parent game.
|
| I've been trying to fix this. It's not quite ready for showing,
| but whatever: https://github.com/shawwn/noh
|
| I used to work on Heroes of Newerth, a dota clone. The parent
| company (S2 Games) sold it to Garena, who shut it down last year.
| In other words, there are ~80 unique characters with wonderful
| animations that no commercial entity cares about. I offer them to
| you.
|
| The gamble is that no one will care; Garena is a massive entity
| focused on the bottom line, and they're based outside of the US.
|
| The main thing I'd like to do is to get together the names of all
| the artists that made these cool characters and promote their
| current work. HoN's main strength was its graphics and fluidity,
| which even today some prefer over dota. That was thanks to an
| incredibly talented art team whose office was based in
| California, and I had the pleasure of watching them work for six
| months or so before the devs were relocated to Michigan. I miss
| them, and I should've spent more time learning the tricks of
| their trade.
|
| I've been making a converter from the HoN format to collada, so
| hopefully this can be a drop-in addition to raylib. Then you can
| make your own games with characters and props from HoN.
|
| EDIT: the author of raylib is here!
| https://news.ycombinator.com/item?id=36614060
| adamrezich wrote:
| wow, an open-source HoN... that's awesome! what a cool project!
| suby wrote:
| Just glancing at it, it looks cool and it's clear you've put a
| lot of work into the project. I will say though, as a piece of
| feedback, I personally wouldn't want to build on top of it due
| to the provenance of the assets. They may not care about it,
| but they also (correct me if I'm wrong) have not approved of
| external parties using them or released the assets under any
| open source license. I have no way of verifying that they don't
| care, and should a project built with these assets become
| successful, I can imagine them going from not caring to caring
| very quickly.
|
| I don't mean to put out a negative comment though, the project
| does look very cool. It's just a risk.
| sillysaurusx wrote:
| Me too! If I was an outsider, I know exactly how I'd feel.
| And that worry is entirely warranted. If you make a viral
| success with these assets, Garena might come knocking.
|
| But that's the thing. I fell in love with the engine during
| my time there. And the only reason was thanks to the assets.
| I didn't want to make a million bucks, I just wanted to
| tinker and play with it.
|
| My hope is that fellow tinkerers will find this useful. If
| nothing else, they can be stub assets till you're able to
| swap them out for your own. And they certainly look gorgeous
| in comparison to most free models. More importantly, it's a
| cohesive dataset --- the entire world is built from parts
| that all have the same style, which is quite hard to cobble
| together from random assets you find online.
|
| If Garena ever does have an issue, I'm hoping I can get them
| on the phone and work out a deal. They want money, we make
| money, there are ways of transferring some money to Garena to
| make everyone happy. It's also a way to reboot an otherwise
| dead franchise. Plus it costs them nothing to wait and see.
|
| But yeah, this is ultimately a labor of love, and I have no
| idea how it'll turn out. In the meantime, it's at least an
| incredible reference of one way to implement a modern (circa
| 2011) game engine.
| mananaysiempre wrote:
| > I fell in love with the engine during my time there.
|
| OK, uh, I've tried a bunch of times to put this in terms
| that wouldn't imply a whole lot of work, but I couldn't, so
| I'll just ask outright:
|
| Any exploration hints for someone who hasn't ever delved
| into a modern engine and has their knowledge limited to the
| very obsolete stuff in Abrash's books and the generalities
| in Nystrom?
|
| I've long wanted to explore how game engines are built, but
| people don't usually say good things about the internals--
| if you do here, that sounds like a chance.
| sillysaurusx wrote:
| Yes! So many. And writing about them is one of the many
| things I need to do. Please, please keep in touch -- my
| email's in my profile, and you can reach me quickly and
| reliably via Twitter DM.
| https://www.twitter.com/theshawwn
|
| You're exactly my target user. I want to help as many
| people get into gamedev as possible.
|
| The most important thing is to get the codebase open in
| an IDE, and building. From there you can place
| breakpoints and start looking at things.
|
| One trick is to literally just hit the pause button in
| the debugger while the game is running and see where you
| end up by looking at the stack frames. I use that all the
| time to map out new codebases. Then start changing some
| code and see what happens.
|
| I'm sorry I haven't been able to get something
| comprehensive together yet; my wife and I have been in
| the hospital for the last month, and we have a month to
| go. But it's almost over.
|
| EDIT: there's a dev stream too. Sorry for the quality and
| the music, but you might be able to glean some useful
| tricks. Pay close attention to the chapter titles, since
| it's a serialization of my thought process as I hunted
| down a bug: https://youtu.be/VBj0RcpxCIc?t=132
| HelloNurse wrote:
| > If Garena ever does have an issue, I'm hoping I can get
| them on the phone and work out a deal.
|
| This is not how lawyers work, especially IP lawyers.
| sillysaurusx wrote:
| Indeed. If the axe comes down someday, oh well. Till
| then, it's an interesting experiment that ultimately no
| one is harmed by.
|
| Garena being based in Asia also helps quite a lot, since
| the IP concerns are a bit less. Cross cultural IP wars
| seem less frequent, and Asian franchises in particular
| seem a bit less aggressively litigious than English
| counterparts.
|
| There is a moral aspect to it too. I put a year or so of
| my life into developing that game. It's not legally mine
| to give away, but it's the only chance the franchise has
| for survival. So I'll just be clear about all of the
| risks (which seem minimal) and everyone can go into it
| with eyes open.
| mananaysiempre wrote:
| > Asian franchises in particular seem a bit less
| aggressively litigious than English counterparts.
|
| Shall I tell you about a small Asian franchise owner
| called Nintendo, or the reason why the most anonymous
| among the commonly used file sharing networks--Perfect
| Dark--originates and has most of its users in Japan?
|
| More seriously, there's (East) Asian and there's Chinese,
| and only the latter can be said to uniformly have lax
| copyright and trademark enforcement.
| Animats wrote:
| > One big problem holding devs back from enjoying gamedev is a
| lack of quality 3D assets.
|
| There are plenty of 3D assets available. There's TurboSquid,
| SketchFab, ArtStation, and the Unity and Unreal asset stores.
| Some are free, some cost. Everybody is moving to glTF format,
| and import and export has much improved.
|
| If you want a good hard project to work on, write something
| that takes an overly-detailed 3D asset, with extensive detail
| in the 3D model, and turns it into a much smaller game asset
| where much of the fine detail is represented in the normal map.
| This has been done, but not all that well. Nobody has done it
| since machine learning started to work. Since the goal is to
| have the visual appearance from all directions match, you need
| a good evaluator for "looks the same to a human".
| 8n4vidtmkvmk wrote:
| I was that 14yo with StarEdit
| c_crank wrote:
| Speaking for myself, I found the process of learning to hand
| roll basic assets to be enjoyable. They aren't top of the line
| or complex, but that stuff isn't needed for a one man solo
| project.
| TrickardRixx wrote:
| Do you have any tips on this front? I've dabbled with game
| engines, but spheres and cubes are only so compelling.
| c_crank wrote:
| Download blender, and learn how to make more complex
| polygonal shapes. I haven't reached the stage of making
| anything like foliage or utilizing curves yet, but just
| being able to make something like a door or a desk is
| liberating.
|
| Similarly, you can do a lot of texturing work with just
| GIMP and a phone camera.
| pbdj wrote:
| Hey! I would love to use these models but can't figure out how
| to. I see they are in .model format - how would I convert them
| to something like .obj or .gltf?
| sillysaurusx wrote:
| Hi! This code is sitting uncommitted on my laptop. I'm sorry
| to report that since I've been in the hospital with my wife
| for the last month, I wasn't able to get it committed in a
| usable state. It pains me that one of the most important
| items is still a TODO, and it's partly why I hesitated to
| show this so soon.
|
| You have a few options. One is to write an importer based on
| the code in src/k2/c_model.cpp. Another is to wait a week or
| so while I get my WIP code pushed.
|
| Do you have any contact info? I'd love to keep in touch with
| you, because you're my target user. In fact, you're the first
| person to ever want to use this besides me, and it'd be a
| shame to let you slip away. My email is in my profile, and
| twitter DM is the most reliable way to reach me quickly:
| https://www.twitter.com/theshawwn
|
| Thanks for asking -- it meant a lot!
| maccard wrote:
| I'm not sure this fixes anything, it just moves the needle
| somewhere else. Once you've got good models you're now missing
| animations and textures, and then you get into lighting. If you
| standardise all of this stuff, you end up with games looking
| exactly the same (see the default unity movement in a large
| number of indie games).
| sillysaurusx wrote:
| You're right about the anims. I've been spending most of my
| time trying to get the collada exporter right so that you can
| import it into Maya and make your own relatively easily. I'd
| do blender, but I honestly have no idea whether animators use
| blender for character anims circa 2023 and Maya has nice IK
| support. (If yo8 happen to be an artist, please chime in
| here.)
| islon wrote:
| I think this an area where AI generation can help a lot. Big
| studios will still do things by hand for better quality and
| less constraints, but for indies, generating a character with
| "stylized cell-shaded human character under X polygons" and
| then go from there will be a revolution.
| dist-epoch wrote:
| What do you think about something like stable diffusion, but
| for 3D assets? Seems like something a few years away.
| sillysaurusx wrote:
| I've been waiting years for it. It's one of the reasons I
| wanted to get into ML in 2019.
|
| One of the major hurdles is that it needs to generate assets
| in a way that fits into an overall art pipeline. Each game
| studio has a unique style, from the naming of bones in a
| skeleton to the way UVs are laid out on textures. This will
| be hard to turnkey.
|
| But it doesn't need to be turnkey. I bet this will
| supercharge artists long before it's an automatic solution
| for gamedevs. So I predict that any artist who heavily
| invests in this tooling will stand to win handsomely over the
| next few years.
|
| Here's an Erdrich horror I made in a few minutes in ZBrush +
| photoshop AI: https://twitter.com/theshawwn/status/1669106560
| 654614528?s=6... the eye texture is all photoshop AI, which
| felt remarkable to me even as terrible as it looks.
|
| The other one who might win is a lone wolf gamedev who
| autogenerates everything. When all your art is autogenerated,
| you don't need a style (or an art pipeline). But this is
| exceptionally difficult to achieve, and I think very few ML
| people have the gamedev perspective necessary to pull it off.
|
| Luckily, it's easier than ever to get into ML. So I'm hopeful
| that gamedevs will jump into ML themselves, as I did, rather
| than wait for someone else to make it. Invent the future
| yourself! You really can.
| progx wrote:
| "Access to this site has been restricted."??? Github problem?
| Cloudef wrote:
| they actually use zig as build system, and it can be compiled
| (and cross-compiled) with zig cc
| planetis wrote:
| One of the options is zig cc. The default is makefiles and
| there's also good cmake support and plain bash/batch scripts.
| planetis wrote:
| Actually the Nim wrapper use none of the above, instead
| compiles and links the static library per project,
| recompiling only when the C source files has changed. Allows
| for the best flexibility if you are using nim.
| pantsforbirds wrote:
| Raysan5 (the author), has built a really neat ecosystem from
| tools he's also made. I really enjoy the way he has gone about
| it. It honestly reminds me of a minecraft world or something.
|
| Check out the full repo and see the projects!
| bibanez wrote:
| The pixel artstyle he uses for his websites and raylib helps
| haha
| gauddasa wrote:
| Why does the page claim "no external dependencies" as the very
| first feature, which is utterly false given it requires 26
| additional libraries to be installed first:
|
| libasound2-dev libegl-dev libgl-dev libgl1-mesa-dev libgles-dev
| libgles1 libglu1-mesa-dev libglvnd-core-dev libglvnd-dev libglx-
| dev libopengl-dev libpthread-stubs0-dev libx11-dev libxau-dev
| libxcb1-dev libxcursor-dev libxdmcp-dev libxext-dev libxfixes-dev
| libxi-dev libxinerama-dev libxrandr-dev libxrender-dev x11proto-
| dev xorg-sgml-doctools xtrans-dev
___________________________________________________________________
(page generated 2023-07-06 23:02 UTC)