English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General > Coders. Releases

 
 
Thread Tools
Old 04 August 2023, 20:58   #3001
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
Quote:
Originally Posted by abu_the_monkey View Post
3000 just sayin

good man
3001 a character space odyssey.
Karlos is offline  
Old 04 August 2023, 20:58   #3002
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
abu_the_monkey is offline  
Old 04 August 2023, 21:02   #3003
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
Going back to the reason for doing it, what I propose is that we render game messages in something like a vertically scrolling console overlay. Not actually per pixel scrolling (though that could be done) but just losing the upper line and everything moving up one on a fixed interval.

What we probably need is a function that can take a string of arbitrary character length and break it across multiple lines, respecting some target width and word boundary. So I may end up needing some function whose only job is that - analysing the string and working where to "cut" it over to a new line. That shouldn't be difficult now though.
Karlos is offline  
Old 04 August 2023, 21:14   #3004
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
Quote:
what I propose is that we render game messages in something like a vertically scrolling console overlay.
I agree. it would be a better solution then the single line of text that was quickly over written by 'new' messages that the original had.
abu_the_monkey is offline  
Old 04 August 2023, 21:27   #3005
paraj
Registered User
 
paraj's Avatar
 
Join Date: Feb 2017
Location: Denmark
Posts: 1,232
Quote:
Originally Posted by Karlos View Post
Going back to the reason for doing it, what I propose is that we render game messages in something like a vertically scrolling console overlay. Not actually per pixel scrolling (though that could be done) but just losing the upper line and everything moving up one on a fixed interval.

What we probably need is a function that can take a string of arbitrary character length and break it across multiple lines, respecting some target width and word boundary. So I may end up needing some function whose only job is that - analysing the string and working where to "cut" it over to a new line. That shouldn't be difficult now though.

Simple greedy approach should work fine for that. Moving into overthinking territory it might make sense for such split lines to logically behave like one in the queue so they exit together (maybe a flag for each indicating that it's logically connected to the previous one - such lines can be auto-popped if they're first in queue).
paraj is offline  
Old 04 August 2023, 22:15   #3006
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
I say KISS for now and refine it later. Job 1 is to implement the previously described FIFO and display mechanism. Develop it separately from what exists now and hook in the injection of new messages once it's good.
Karlos is offline  
Old 06 August 2023, 18:16   #3007
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
I've not had a chance to work on it, but I am thinking that a sensible approach to the in game messages might be to reprocess them on level loading. Each message today is basically fixed length and space padded. There's an absolute maximum of 160 chars per message.

Converting these to basic strings by stripping out any the excess whitespace can only leave a text string that is either the same length or shorter, so they may as well be rewritten in-line.

For display purposes, these strings can be parsed into an array of one or more string pointers and character lengths by a function designed to wrap the text proportionally to a given maximum width and our message queue for display only requires those.

When in RTG 2/3 mode, we should have a separate chunky buffer (like the border glyphs) to render the same text into and copy that to a non-overlapping part of the visible display, since drawing byte by byte on a locked bitmap is probably going to be slower.
Karlos is offline  
Old 06 August 2023, 18:52   #3008
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
are the collectable and option texts handled the same way? or is it only applicable to the 'hint' (for want of a better word) text?
abu_the_monkey is offline  
Old 06 August 2023, 19:06   #3009
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
Quote:
Originally Posted by abu_the_monkey View Post
are the collectable and option texts handled the same way? or is it only applicable to the 'hint' (for want of a better word) text?
They all go through the existing mechanism, yes.
Karlos is offline  
Old 06 August 2023, 19:07   #3010
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
I like the idea of adding a quake style centre screen print, but it's not immediately obvious what it should be used for.
Karlos is offline  
Old 06 August 2023, 19:10   #3011
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
Quote:
Originally Posted by Karlos View Post
I like the idea of adding a quake style centre screen print, but it's not immediately obvious what it should be used for.
I had the same thought and the same conundrum
abu_the_monkey is offline  
Old 06 August 2023, 19:11   #3012
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
Quote:
Originally Posted by Karlos View Post
They all go through the existing mechanism, yes.
ok, that's cool
abu_the_monkey is offline  
Old 06 August 2023, 19:47   #3013
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
Quote:
Originally Posted by abu_the_monkey View Post
I had the same thought and the same conundrum
Maybe for non-game messages, e.g. the various things you can toggle on and off.
Karlos is offline  
Old 06 August 2023, 21:22   #3014
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
I don't know, but I think the 'hint/story line messages' should probably take centre stage (and probably 'pause' so its obvious the game has not frozen)
and all the rest should go through the top console style output so you actually get to read the 'important' message and keep your eye on the ball.
abu_the_monkey is offline  
Old 08 August 2023, 00:02   #3015
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
@Karlos

I pulled and built your 'feature/text rendering' branch but nothing seems different.
Is there a build option to enable the text rendering?

I could just be being thick, its been a while and using AMOS Pro may have rotted my brain a bit
abu_the_monkey is offline  
Old 08 August 2023, 00:54   #3016
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
Quote:
Originally Posted by abu_the_monkey View Post
@Karlos

I pulled and built your 'feature/text rendering' branch but nothing seems different.
Is there a build option to enable the text rendering?

I could just be being thick, its been a while and using AMOS Pro may have rotted my brain a bit
I merged the basic text rendering already. I'm currently finishing off something else (HUD in planar mode on the C side).

If you look in the Vid_Present() call there should be some commented out example calls: https://github.com/0xABADCAFE/alienb.../screen.c#L391

The rendering calls just aren't wired up to anything yet.
Karlos is offline  
Old 08 August 2023, 00:59   #3017
abu_the_monkey
Registered User
 
Join Date: Oct 2020
Location: Bicester
Posts: 2,035
@Karlos

Thanks

I thought I had broken my linux vm again.
makes sense now
abu_the_monkey is offline  
Old 08 August 2023, 01:32   #3018
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
Quote:
Originally Posted by abu_the_monkey View Post
@Karlos

Thanks

I thought I had broken my linux vm again.
makes sense now
No worries. The parameters are documented here https://github.com/0xABADCAFE/alienb...e/c/draw.h#L45

I plan to add an assembler callable hook that packs the params into a smaller number of registers for simplicity but for now, if you want to draw text with them, it's C only.

I've already sketched out how the queue system will work, i just need to actually do it
Karlos is offline  
Old 09 August 2023, 13:42   #3019
pixie
Registered User
 
pixie's Avatar
 
Join Date: May 2020
Location: Figueira da Foz
Posts: 430
A non related question, would be possible to use the tkg assets on doom? That way project Osiris or alike could be made closer to the real thing
pixie is offline  
Old 09 August 2023, 14:07   #3020
Karlos
Alien Bleed
 
Karlos's Avatar
 
Join Date: Aug 2022
Location: UK
Posts: 4,542
There's no reason someone couldn't make a gzdoom total conversion. I don't see it being much more complicated than Osiris was. You might need to reuse some of the graphics from the 2MB version, e.g.vanilla bitmap versions of all the lightsourced sprites. Either that or create something that can recreate them from the HQN data which contains the colourmap and four lightsource variations.

Osiris is an excellent example of what a very dedicated person/group can achieve.
Karlos is offline  
 


Currently Active Users Viewing This Thread: 2 (0 members and 2 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Alien Breed 3D II The Killing Grounds RTG patch Angus Retrogaming General Discussion 63 14 December 2022 15:20
Alien Breed & Alien Breed '92: SE - delay when picking up items / opening doors Ian support.WinUAE 16 23 December 2016 15:50
Alien Breed 3D II : The Killing Grounds code booklet alexh support.Games 19 10 October 2012 22:17
Alien Breed 3D 2 - The Killing Grounds Ironclaw support.Games 12 13 September 2005 13:07
HD Version of Alien Breed I ? Kintaro request.Old Rare Games 20 31 July 2003 10:48

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 06:27.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.16646 seconds with 14 queries