TinyGL: FBO, Shaders and futur improvements
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 11720 from 2003/5/22
    From: Germany
    > specially if it will make it easier for X5000 and SAM owners
    > to dual boot AmigaOS4 and MorphOS on the same video card

    The bounty proposal goes up to TeraScale 2 generation, the predecessor of TeraScale 3. Modernish 3D support by OS4/Enhancer starts with GCN1 generation, the successor to TeraScale 3.
  • »30.05.22 - 00:06
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    sailor
    Posts: 278 from 2019/5/9
    From: Central Bohemi...
    Quote:

    bigfoot wrote:
    When it comes to performance, it's pretty hard to generalise just based on specs alone. For current MorphOS OpenGL applications, the limiting factor in OpenGL performance is almost always memory bandwidth. For future ones that will use complex shaders, having more and higher clocked shader cores will become more important than memory bandwidth.

    As for actually using all the cores, that is pretty much transparently handled on the hardware itself. The driver doesn't program individual cores, it just submits a job to the GPU, and the GPU internally handles splitting up this job into smaller parts and handing those parts to individual cores. So short answer: Yes, MorphOS will be able to handle any shader core count.

    @bigfoot
    many thanks! This is perfect information.
    Good luck with your work!
    AmigaOS: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOneX1000
    MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook G4, Mac Mini, iMac G5, Powermac G5 Quad
  • »30.05.22 - 05:16
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    MoerBoer
    Posts: 175 from 2019/10/15
    Great news @bigfoot!

    I will contribute for sure.

    [ Edited by MoerBoer 30.05.2022 - 10:27 ]
  • »30.05.22 - 07:22
    Profile
  • Paladin of the Pegasos
    Paladin of the Pegasos
    NewSense
    Posts: 1285 from 2012/11/10
    From: Manchester, UK/GB
    @ bigfoot - I'll also support this bounty once it gets initiated, as far as I see it, work on shaders is an absolute must have implemented for the necessary improvements that will advance our GFX hardware's capabilities. 8-D
    MacMini 1.5GHz,64MB VRAM, PowerBooks A1138/9 (Model 5,8/9),PowerMac G5 2.3GHz(DP), iMac A1145 2.1GHz 20", all with MorphOS v3.17,Airport,Bluetooth,A1016 Keyboard,T-RB22 Mouse,DVD-RW-DL,MiniMax,Firewire/USB2 & MacOSX 10.4/5.
  • »30.05.22 - 07:24
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    beworld
    Posts: 538 from 2010/2/10
    From: FRANCE
    For me i have a preference for "Target 2: Framebuffer objects" (can use by SDL2 OpenGL renderer driver) and shaders and and.. all :-)

    Same here i will contribute.
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.05.22 - 09:22
    Profile Visit Website
  • MorphOS Developer
    cyfm
    Posts: 492 from 2003/4/11
    From: Germany
    I recently had a chance to try the updated Aquaria port from

    Aquaria_1.002 @ MorphOS Storage

    Does anyone know why the in-game bubbles are "square" and not sort of round there ? :)

    Maybe something missing in TinyGL regarding stencil support ? It would at least be nice to have glitches like this fixed in a future update I guess ...

    Edit: OK, never mind, seems that we tested it with an incomplete dataset, TinyGL and the game seems to be fine in that regard ...
  • »30.05.22 - 09:35
    Profile Visit Website
  • Moderator
    Kronos
    Posts: 2099 from 2003/2/24
    Quote:

    bigfoot wrote:

    The bounty
    I gotta admit that I'm really unsure how to organise this bounty, so I'd like you guys' input on this. We can either sort of merge all the targets (maybe minus the R600 driver) into one, and then I work on them in the order that makes the most sense for me, or we can do individual bounties for each target. I think that most people don't really have any preference as to what they'd specifically like to see done, just as long as it means support for more modern games and applications, which would speak in favour of doing a merged bounty. We could also do sort-of a hybrid, where we have a merged bounty, but when you contribute to the bounty, you get to vote for which target you'd like to see completed first. So please leave some feedback everyone, tell me what you'd like to see!



    The question here is really how big will that bounty be?

    For the whole thing were are talking 4 figures for sure (5 or 6 once we convert it into ZAR ;) ), but what about each step on its own? And which of the steps even make sense without the others?

    I will chip in something but it might be a good idea to get the bounty started before people really feel the recession.
  • »30.05.22 - 09:41
    Profile
  • MorphOS Developer
    bigfoot
    Posts: 430 from 2003/4/11
    Quote:

    amigadave wrote:
    I haven't booted up any MorphOS system in probably almost 2 years, and I'm on a very limited retirement budget, but I'll gladly donate to this proposed TinyGL bounty, specially if it will make it easier for X5000 and SAM owners to dual boot AmigaOS4 and MorphOS on the same video card, because I think that allows more users to use MorphOS more often, and encourages more development for MorphOS software and games. With all the problems surrounding Hyperion Entertainment and further development of AmigaOS4, making it easier for existing AmigaOS4 users to try out MorphOS should result in SOME new users, and maybe one or two new developers, or porters of software/games.


    I definitely appreciate the support! But as has already been stated in another reply, this wouldn't really overlap with graphics hardware typically used by AmigaOS 4 users.

    Quote:

    I don't understand all the technical differences between the latest Nova graphics for AmigaOS4, and TinyGL for MorphOS, so this might be a stupid question, but could collaboration with the author of the Nova graphics that is funded by A-Eon, and/or AmigaKit help improve video drivers for MorphOS, and cross platform development for both MorphOS and AmigaOS4? Seems to me that both Big Foot, and Hans of Nova, are really talented video driver developers, and it is a shame if they can't help each other to make development on both platforms better and easier, and porting between systems much easier.


    When it comes to graphics and graphics drivers in particular, the two systems are to the best of my knowledge completely different. There isn't really any reasonable way for something like that to work, unfortunately.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »30.05.22 - 10:12
    Profile Visit Website
  • Butterfly
    Butterfly
    Posts: 72 from 2020/12/24
    Very interesting to read that a kind of mini shader functionality already exists on R300 drivers.

    If somewhat old Radeons can have some support from R300 shader code allowing the missing functions to be implemented, I would bet for it: Besides non-duplicated work, probably it would increase performance leaving normal CPU for other tasks (not sure about that).


    Dhewm3 by default uses GL_ARB_vertex_program and GL_ARB_fragment_program extensions.

    The rest of needed functionalities are located in RenderSystem_init.cpp and draw_arb2.cpp sources.

    It was not my intention to push developers to a humongous work but my "potato port" might have some use after all.
  • »30.05.22 - 11:52
    Profile
  • MorphOS Developer
    bigfoot
    Posts: 430 from 2003/4/11
    Quote:

    Kronos wrote:

    The question here is really how big will that bounty be?

    For the whole thing were are talking 4 figures for sure (5 or 6 once we convert it into ZAR ;) ), but what about each step on its own?


    Yeah, that is a very good question. At least there seems to be enough interest to continue with this, and the majority seems to want to be able to donate towards individual targets, so I'll figure out price targets for each individual task and then set up something for handling payments.

    Quote:

    And which of the steps even make sense without the others?


    Only really the R600 driver more or less depends on having the fixed-function pipeline implemented as shaders. It can be done without it, but it just means a quite big amount of duplicate work.

    Everything else can be done individually really.

    Quote:

    I will chip in something but it might be a good idea to get the bounty started before people really feel the recession.


    Well, fingers crossed for no recession, but good point nonetheless :)
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »30.05.22 - 15:43
    Profile Visit Website
  • MorphOS Developer
    bigfoot
    Posts: 430 from 2003/4/11
    Quote:

    Cowcat wrote:
    Very interesting to read that a kind of mini shader functionality already exists on R300 drivers.


    There was indeed already some work done towards shaders for R300 (and R400, which is almost identical in that regard), but it never really left the experimental state. There's definitely lots of work still to be done to have it usable in general.

    Quote:

    If somewhat old Radeons can have some support from R300 shader code allowing the missing functions to be implemented, I would bet for it: Besides non-duplicated work, probably it would increase performance leaving normal CPU for other tasks (not sure about that).


    Everything that would be handled by implementing the fixed-function pipeline as shaders is already handled on the GPU today, so it wouldn't change anything from a performance point of view.

    What could increase performance, and I want to make it clear that I'm speculating here, but for example in Doom 3, I imagine that it is doing interpolation between model frames currently. Without shaders, it has to do this with the CPU for every frame. With shaders it could do this interpolation on the GPU itself, which would not just save CPU power, but also allow for the models to be uploaded to the graphics card just once, instead of once every frame.

    Quote:

    Dhewm3 by default uses GL_ARB_vertex_program and GL_ARB_fragment_program extensions.

    The rest of needed functionalities are located in RenderSystem_init.cpp and draw_arb2.cpp sources.


    Thank you :)

    Quote:

    It was not my intention to push developers to a humongous work but my "potato port" might have some use after all.


    Sometimes a push is required :) And I'm fairly sure plenty of people are enjoying your work too, so it's definitely useful!
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »30.05.22 - 15:55
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    emeck
    Posts: 157 from 2014/7/15
    @cyfm
    Quote:

    cyfm wrote:
    I recently had a chance to try the updated Aquaria port from

    Aquaria_1.002 @ MorphOS Storage

    Does anyone know why the in-game bubbles are "square" and not sort of round there ? :)



    Look round here, at least as far as I have played, which is not much yet.
    PowerBook 5.2 MorphOS 3.15
    PowerBook 5.8 MorphOS 3.15
    Amiga 1200 BPPC/BVision AOS4.1 FE
  • »31.05.22 - 21:42
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    tolkien
    Posts: 464 from 2013/5/29
    I will contribute as much as I can on a regular basis.

    In Spain we have been in crisis since 2008 so a new recession is not going to be noticed! ;)
    MorphOS: PowerMac G5 - PowerBook G4 - MacMini.
    Classic: Amiga 1200/060 - A500 PiStorm
  • »01.06.22 - 18:13
    Profile
  • MorphOS Developer
    cyfm
    Posts: 492 from 2003/4/11
    From: Germany
    Quote:

    emeck wrote:
    @cyfm
    Quote:

    cyfm wrote:
    I recently had a chance to try the updated Aquaria port from

    Aquaria_1.002 @ MorphOS Storage

    Does anyone know why the in-game bubbles are "square" and not sort of round there ? :)



    Look round here, at least as far as I have played, which is not much yet.


    Ok, maybe it is some problem with corrupted images or broken files with the data set I tested, I guess I need to check that ...
  • »02.06.22 - 00:07
    Profile Visit Website
  • MorphOS Developer
    bigfoot
    Posts: 430 from 2003/4/11
    Thank you for the interest, everyone. I appreciate it!

    I've set up a quick website to keep track of contributions and with details about the different projects. Please note that this is still very much work in progress, and it will be updated and extended in the near future.

    https://tinygl.molsen.co.za/

    There are instructions for contributing via bank transfer and via Paypal in CAD, EUR, GBP and USD. If you'd like to contribute directly in a different currency, please let me know which currency you'd like to pay in, and I'll see what I can do. If you're contributing with a currency not listed above, and don't mind a conversion/international transfer fee, then please choose to pay in EUR.

    Also keep in mind that I will amend the project descriptions in the near future to add some more firm requirements for completion of each project, so everyone is 100% sure what they're paying for. This will mainly be a list of things that must work for each project to be considered complete.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »02.06.22 - 13:39
    Profile Visit Website
  • Moderator
    Kronos
    Posts: 2099 from 2003/2/24
    50€ seemed like a good start....
  • »02.06.22 - 14:37
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    beworld
    Posts: 538 from 2010/2/10
    From: FRANCE
    +50€ here
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »02.06.22 - 16:00
    Profile Visit Website
  • MorphOS Developer
    bigfoot
    Posts: 430 from 2003/4/11
    Thank you, everyone, for the contributions that have already come in! I'll try to keep the website updated once a day at least.

    By default I won't display anyone's names on the website, so don't forget to let me know if you want your name on there (and which name to put on there if so)!
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »02.06.22 - 16:49
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    sailor
    Posts: 278 from 2019/5/9
    From: Central Bohemi...
    +50€ for any of possibilities.
    Of course, I want support Southern Island+ and is not options ;-) ;-)


    [ Edited by sailor 02.06.2022 - 20:33 ]
    AmigaOS: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOneX1000
    MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook G4, Mac Mini, iMac G5, Powermac G5 Quad
  • »02.06.22 - 17:06
    Profile
  • IKE
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    IKE
    Posts: 140 from 2009/11/7
    From: Southern CA
    This is great news. Should be a News item!
    IKE

    MacMini G4 1.5Ghz/PowerBook G4 1.67Ghz/PowerMac G5 2.0Ghz DP 7,2 Radeon 9650/256MB

    Join the conversation @ r/morphos
  • »02.06.22 - 20:32
    Profile Visit Website
  • Paladin of the Pegasos
    Paladin of the Pegasos
    NewSense
    Posts: 1285 from 2012/11/10
    From: Manchester, UK/GB
    I've added my #1st donation to the funding, probably will add some more to this worthwhile project to see it get implemented as soon as can be achieved. 8-D
    MacMini 1.5GHz,64MB VRAM, PowerBooks A1138/9 (Model 5,8/9),PowerMac G5 2.3GHz(DP), iMac A1145 2.1GHz 20", all with MorphOS v3.17,Airport,Bluetooth,A1016 Keyboard,T-RB22 Mouse,DVD-RW-DL,MiniMax,Firewire/USB2 & MacOSX 10.4/5.
  • »02.06.22 - 21:34
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    MoerBoer
    Posts: 175 from 2019/10/15
    Great community!

    More than 10% of goal already reached, let's keep it up!
  • »03.06.22 - 12:39
    Profile
  • Cocoon
    Cocoon
    Fogg_80
    Posts: 45 from 2007/11/12
    From: Foggia, south ...
    Bigfoot is the best! Thanks
    I make donation
    Tinygl
    R600 driver
    Stile Ubuntu
    Sorry for my bad english.
  • »03.06.22 - 18:06
    Profile
  • IKE
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    IKE
    Posts: 140 from 2009/11/7
    From: Southern CA
    35% to the goal so far...wow...keep it up!
    IKE

    MacMini G4 1.5Ghz/PowerBook G4 1.67Ghz/PowerMac G5 2.0Ghz DP 7,2 Radeon 9650/256MB

    Join the conversation @ r/morphos
  • »08.06.22 - 01:15
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    tolkien
    Posts: 464 from 2013/5/29
    Done a little donation. Hope to repeat in a few days.
    Lets do it!

    A question...
    How is the general fund managed?
    MorphOS: PowerMac G5 - PowerBook G4 - MacMini.
    Classic: Amiga 1200/060 - A500 PiStorm
  • »08.06.22 - 20:13
    Profile