Inside3D!
     

Descriptive Modding: The PSP Engine
Goto page Previous  1, 2, 3, 4, 5  Next
 
Post new topic   Reply to topic    Inside3d Forums Forum Index -> Engine Programming
View previous topic :: View next topic  
Author Message
MDave



Joined: 17 Dec 2007
Posts: 75

PostPosted: Sat Jan 16, 2010 5:20 am    Post subject: Reply with quote

mh wrote:

GLQuake is also incredibly wasteful on textures: it doesn't actually need to store the texels with the tx struct, so drop that. You'll need to use (byte *) (mt + 1) for your load texture data, as well as modify R_InitSky to take mt instead of tx.


The PSP port of GLQuake had a lot of totally rewritten code for handling textures and such, because of the large differences in how you have to handle memory on the PSP compared to a PC. Check this out, start from the middle of the file and go down from there, looks pretty alien like compared to PC quake code eh? Razz

http://bladebattles.com/kurok/SVN/psp/video_hardware_draw.cpp
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Sun Jan 17, 2010 1:20 am    Post subject: Reply with quote

Revision "KurokQuake 1": source

This is the first beta quality download in this thread ... except for "Revision 22" (except that doesn't have lightmaps). This source version actually has little to do with Revision 22; this one is a code-merge from the opposite side of the equation.

This isn't perfect: I need to remove the ProQuake aim stuff from Kurok (so I can add it back in later) to make it compatible with Quake servers for connecting [unless it somehow is, but it shouldn't be].

No one reading this thread will understand what I am doing here, and that's fine (because it only matters to me Wink ) but I'm spinning 3 or 4 slightly different engines together here with the goal of:

1. A final cross-platform ProQuake, so I can maintain the PSPQuake going forward with the minimum reasonable feature set ... which is mostly defined by Kurok.

2. An "add-on" define in the build to make a Kurok build from ProQuake on any platform. This will let me maintain a modified Kurok engine off the ProQuake build as I continually add features to ProQuake. Plus I want to see Kurok hosted on servers, so I am likely to have stealth Kurok support in ProQuake. And if I ever attempt to combine ProQuake and ZQuake (the Quakeworld engine) into a single engine ... maybe late the in year ... the modified Kurok engine can take that ride too automatically. [Did I mention I *really* like Kurok and all the ideas that MDave put into that? Razz ]

/I never do anything strange to ProQuake, I'm very conservative. I largely focus on better multiplatform support and keep upgrading the guts of the engine to be "better" and occasionally add optional features to it or features that never interfere with backwards compatibility.
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Sun Jan 17, 2010 2:30 am    Post subject: Reply with quote

Revision "KurokQuake 2": source

Can connect to regular Quake servers; NAT fixed.

Rather stable.

Now I should be able to more quickly integrate all of the rest of this together. The "revision 22" and this are sort of opposites of each other.
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
ceriux



Joined: 06 Sep 2008
Posts: 969
Location: Florida, USA

PostPosted: Sun Jan 17, 2010 5:07 am    Post subject: Reply with quote

is that quake 2? o.O or like an updated Kurok? the names a bit confusing.
_________________
QuakeDB - Quake ModDB Group
Back to top
View user's profile Send private message Yahoo Messenger
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Sun Jan 17, 2010 12:02 pm    Post subject: Reply with quote

ceriux wrote:
is that quake 2? o.O or like an updated Kurok? the names a bit confusing.


PSPQuake drifting towards final goal ----> revisions 1 thru XXX
KurokQuake drifting towards final goal ---> revisions 1 thru 2 so far

I'm merging 3 engines together with ProQuake being the third, and then I'm going to try to merge some of more recent ProQuake builds together into a single project file with essentially the Kurok engine as an optional ProQuake type of build.

End result or perhaps I should say, eventual result: ProQuake on 5.2 platforms with identical features and Kurok on 5.2 platforms with identical features. (.2 = the two types of Direct3D builds supported: MH D3D8.1 and classic Direct3Quake style).

[No doubt it is the Solitude engine's destiny to become part of this as well].
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Tue Jan 19, 2010 6:22 am    Post subject: Reply with quote

3rd Revision "KurokQuake": source

/Note: default the idlesway to off sometime
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Tue Jan 19, 2010 9:02 am    Post subject: Reply with quote

4rd Revision "KurokQuake": source

More improvements. Working through some of the network code oddities of original Quake -- the mess of bad stuff in it.

Case in point, I connected to rage.quakeone.com with 3rd revision and voted practice-mode. This restarts the map, which causes a "reconnect".

Original Quake likes to do a reverse DNS lookup that takes 6 seconds (for what reason?).

In those 6 seconds, the Rage servers figures I'm not there and resets to default mode that occurs when all players leave. So I can't actually vote practice mode because it won't stay on.

And these great network code features of original Quake get ported to every platform every time. Very Happy
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Tue Jan 19, 2010 6:37 pm    Post subject: Reply with quote

KurokQuake repair dock:

1. Make Kurok's idlesway off by default.
2. Keep most of the float operations (these are mostly true optimizations) and move into ProQuake prime where applicable. Do them as defines to be able to change your mind on compilation if need be the case.
3. ProQuake actually had some sprintfs (I hate!); kill them all (except the complex one in networking).
4. Kurok's On-Screen Keyboard ... port it to ProQuake prime.
5. R&D fun for the future: make the lmp file for the on-screen PSP menu embedded into the engine and throw that into the PSP operating system files folder
6. Don't remove Kurok's texture manager or down-sample code, but remember it for in the future when you add a texture manager to ProQuake.
7. I like Kurok's Cvar_SetValue handling of int; keep
8. I've been using CRC on textures, Kurok uses lhsum. Use lhsum.
9. Kurok doesn't drop the loading screen when connected on a map change. Fixor.
10. Kurok doesn't stop MP3 playback on disconnect
11. Add command history to KurokQuake!
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Tue Jan 19, 2010 7:04 pm    Post subject: Reply with quote

To MDave:

I have to say, looking through your engine code is a real pleasure.

Several times, I have found some code and wondered "what's that do" and then booted up Kurok to test it.

Maybe back in the golden days of Quake, people did things with the Quake like what you did ... but I personally have not seen a dedicated modified engine invested with as much of a strive for getting every little thing right as what you have done.

Case in point, the scr_disabled_for_loading to prevent the console from showing. I've run across several of these small tweaks that make Kurok such a great engine.
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Tue Jan 19, 2010 9:18 pm    Post subject: Reply with quote

6th Revision "KurokQuake": source

This revision is pretty solid.

ip:port connecting works, NAT fixed.

Many more changes to go (still no ping in scoreboard) but this ProQuake/Kurok/PSPQuake 2.0 combo revision is very nice.
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Team Xlink



Joined: 25 Jun 2009
Posts: 320

PostPosted: Mon Jan 25, 2010 2:17 am    Post subject: Reply with quote

I thought I might mention this since you are using combining Kurok with it.

When you get to the end of a song the engine just locks up. I don't know why but I suspect it might still be trying to play the song when there are no bytes left to play. I am probably totally wrong about this.
_________________
Anonymous wrote:
if it works, it works. if it doesn't, HAHAHA!
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Mon Jan 25, 2010 2:39 am    Post subject: Reply with quote

Team Xlink wrote:
I thought I might mention this since you are using combining Kurok with it.

When you get to the end of a song the engine just locks up. I don't know why but I suspect it might still be trying to play the song when there are no bytes left to play. I am probably totally wrong about this.


I noticed that too! Smile

I have an informal list of little nagging things and that's one of them. There are some network things too.

A few more revisions and recombinations and a very solid PSP Quake engine will emerge with all of the advantages of Kurok and ProQuake. It's closing in.
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Team Xlink



Joined: 25 Jun 2009
Posts: 320

PostPosted: Tue Jan 26, 2010 1:34 am    Post subject: Reply with quote

Are you going to eventually completely combine the PSP Quake with ProQuake? I suspect you would achieve this by doing #ifdef PSP just like you do for the Windows, Mac OSX, and Linux builds.

Also, if that is the case after it gets fully integrated are you planning on doing more PSP specific parts or such continue working on ProQuake as a whole?

Thank you, I look forward to the next revision.
_________________
Anonymous wrote:
if it works, it works. if it doesn't, HAHAHA!
Back to top
View user's profile Send private message
Baker



Joined: 14 Mar 2006
Posts: 1538

PostPosted: Tue Jan 26, 2010 1:53 am    Post subject: Reply with quote

Team Xlink wrote:
Are you going to eventually completely combine the PSP Quake with ProQuake? I suspect you would achieve this by doing #ifdef PSP just like you do for the Windows, Mac OSX, and Linux builds.

Also, if that is the case after it gets fully integrated are you planning on doing more PSP specific parts or such continue working on ProQuake as a whole?

Thank you, I look forward to the next revision.


I'm going for one engine, same features on all platforms with considerations for things that have to be different.

And then build on top of that. Haven't planned out anything beyond that. I'm getting closer.
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...
Back to top
View user's profile Send private message
Team Xlink



Joined: 25 Jun 2009
Posts: 320

PostPosted: Wed Jan 27, 2010 9:31 pm    Post subject: Reply with quote

I found something when I was using your latest revision of this.

If you go into the console and push the right arrow it starts listing commands but if you push the left arrow it backspaces.

The PSP can't type so there is no need for the backspace because you have to call the on screen keyboard to type at all.

So why not make the left arrow cycle commands the other way so it would go to the previouse and the right arrow goes to the next (The right arrow already does this).
_________________
Anonymous wrote:
if it works, it works. if it doesn't, HAHAHA!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Inside3d Forums Forum Index -> Engine Programming All times are GMT
Goto page Previous  1, 2, 3, 4, 5  Next
Page 3 of 5

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2004 phpBB Group