Crime Cities (early Techland game, circa 2000)

General discussion about nGlide.
tfishell
Posts: 25
Joined: Thu May 17, 2012 2:12 am

Crime Cities (early Techland game, circa 2000)

Postby tfishell » Tue Nov 25, 2014 4:56 am

http://en.wikipedia.org/wiki/Crime_Cities

I came across this game some time ago but never thought to ask about it here. It seems like an obscure good old game (from the dev who would go on to make Call of Juaraz and Dead Island), and if the rights reverted to Techland perhaps the game could show up on GOG. (It may help that both Techland and GOG are based in Poland.)

I can't seem to find information I can interpret as to whether this game supported Glide API or not. Perhaps Zeus or someone else can help me reach a conclusion. (A surprisingly-recent review - http://www.thecrawdaddypage.com/reviews ... ities.html - mentions that the game seems to run on modern machines okay by itself.)

http://www.3dfxzone.it/dir/3dfx/wickedgl/index.php says, "WickedGL contains an OpenGL subset for ... Crime Cities ..." Not really sure what that means, but I noticed other Glide games listed there like Unreal and Deus Ex.

It's mentioned on VOGONS in a variety of threads but I'm not sure which ones are worth linking to. Here's one: http://www.vogons.org/viewtopic.php?f=4 ... 4&start=40

Hmmm, http://www.vogonswiki.com/index.php/Lis ... etary_APIs says,"This is a list of accelerated games for all early 3D accelerators, except 3Dfx!" Under PowerVR (PowerSGL) is listed "Crime Cities (Techland SGL miniGL)".

Stiletto
Posts: 44
Joined: Sat Apr 10, 2010 6:55 pm

Re: Crime Cities (early Techland game, circa 2000)

Postby Stiletto » Tue Nov 25, 2014 11:19 pm

Greetz from VOGONS! :D

Yes, Crime Cities is a Glide game - sorta. It's more like a miniGL game.

Crime Cities uses its own 3D engine that renders to OpenGL, but being as OpenGL on Windows for gaming was fairly new at the time, Techland considered that many videocards did not have full OpenGL ICD's and they wanted to support older cards, so they ended up creating OpenGL-like drivers for many cards and included them with the game. This includes 3dfx Glide.

These pages explain it:
http://web.archive.org/web/199812020249 ... /index.htm
http://web.archive.org/web/199812070728 ... minigl.htm

This is basically what happened for id Software (and others) MiniGL games, although in that case many of the videocard manufacturers created the MinGL driver themselves. (Um, I think. Maybe it was id software instead.)

Here's some information on MiniGL: https://en.wikipedia.org/wiki/MiniGL

So Crime Cities (both the demo and the retail version) ships with Techland's "OpenGL-like" drivers (all named OpenGL32.dll) for 3dfx Voodoo cards (3dfx Glide, aka TC3DFX), Matrox Mystique cards (Matrox MSI, aka TCMSI), PowerVR Series 1 cards (PowerVR PowerSGL, TCSGL), and S3 Virge cards (S3 S3D, TCS3D), plus a generic Direct3D OpenGL driver of their creation (TCD3D). They also include SGI's "Cosmo" OpenGL32.dll, the generic Win9x OpenGL32.dll, and the beta OpenGL32.dll OpenGL ICD for 3dfx Voodoo series.

So in the case of Crime Cities and Glide, it's kinda like:
Crime Cities -> "OpenGL" -> TC3DFX -> Glide.
Adding nGlide to the mix would make it:
Crime Cities -> "OpenGL" -> TC3DFX -> Glide -> nGlide -> Direct3D
which is sorta pointless when it already can use Direct3D either through the ancient MS OpenGL for Win9x or through TCD3D.

We discovered Crime Cities and Techland's uniqueness over a year ago at VOGONS. Credit goes to leileilol. Since they implement a subset of OpenGL 1.x, they are also something fun to experiment with when you're using cards of that generation to try to get other OpenGL or MiniGL games working. You can rename their OpenGL32.dll to the filename required by the game.

In the thread on VOGONS you mention, leileilol was able to get MDK2 to work on a PowerVR Series 1 card by naming the Techland OpenGL32.dll file for PowerVR cards (let's call it TCPVR) "miniGL" as 3dfxvgl.dll and then putting that in Windows/SYSTEM, as MDK2 is picky and strictly uses drivers from the Windows System folder.

Including games like Techland's Crime Cities, or miniGL games from id Software, in game lists that list "all Glide games" gets a bit interesting. Technically, you can think of these games as actually being OpenGL games. It's just that OpenGL for gamers really didn't exist or work well at the time (that's a very vague summary), so graphic card manufacturers and videogame publishers ended up making drivers that implemented the subset of OpenGL their games required to work. In many cases these drivers did not "directly use the cards" (most don't anyways) but called their various required 3D API DLLS, such as Glide2x.dll / Glide3x.dll for games that used id Software MiniGL's 3dfxgl.dll.

(And then there were hackers who, even though miniGL only implemented a subset of OpenGL, would take 3dfxgl.dll out of the game and rename it OpenGL32.dll and put it in game folders for games that only supported OpenGL... or other card owners with other miniGL's to OpenGL32.dll, and so on... because "it was faster" than their graphics card's OpenGL ICD, or other things. Mad compatibility issues abound, but sometimes you can get it to work. leileilol's experimenting with Techland's OpenGL driver for PowerVR cards proves that.)

leileilol puts it succinctly here:
http://www.vogons.org/viewtopic.php?p=273792#p273792
Claiming an API wrapper to another as native API support is like calling Direct3D games as Glide.

Native glide = GAME.EXE -> glide2x.dll/ovl || glide3x.dll

Native glide != GAME.EXE -> opengl32.dll (in folder) -> glide2x.dll
Native glide != GAME.EXE -> opengl32.dll (in system) -> 3dfxvgl.dll -> glide3x.dll


Still, wrapper authors like Zeus and game collectors like, um, Gamecollector have included these sort of games in their compatibility testing because wrappers require lots of testing with all sorts of games. They'll probably test it and add it to their compatibility list anyways. ;) But in the detailed compatibility list, they'll mark it as using Techland OpenGL, and other games id Software MiniGL, and so on.

That Crime Cities game review you found seems to be from 2003, I don't see how that's "recent"?

That old WickedGL documentation you found (that's not their original website of course) simply states that the miniGL they implement (again, dealing with this subset of OpenGL again) for 3dfx Voodoo cards supports all those games. Again, with miniGL they are coding a driver that supports not everything that OpenGL did at the time, and then having it call one of the available 3D APIs at the time (in this case, Glide).

I hope I have explained this pretty well. :)
Last edited by Stiletto on Fri Nov 28, 2014 3:19 pm, edited 3 times in total.

Gamecollector
Posts: 940
Joined: Fri Jan 07, 2011 9:29 am

Re: Crime Cities (early Techland game, circa 2000)

Postby Gamecollector » Wed Nov 26, 2014 12:00 am

Ok, I have this game so I can test it.
1) Yes, there is driver\tc3dfx\opengl32.dll in the game directory. With the glide3x.dll dependency. And you can select it in the game config tool ("Techland glide 3.x renderer").
It looks like this renderer works in 640x480 and 800x600 modes only...
2) The game also detects 3dfxvgl.dll in the %system% directory (as "3dfx standalone opengl").
P.S. The game needs the IgnoreException ACT fix.
P.S.S. I have added this game to my "minigl" list.
Asus P4P800 SE/Pentium4 3.2E/2 Gb DDR400 (3-3-3-8),
Radeon HD3850 Agp (Sapphire), Catalyst 14.4 (XpProSp3).
2 Voodoo2 12 MB (SLI), Win2k drivers 1.02.00 (XpProSp3).

tfishell
Posts: 25
Joined: Thu May 17, 2012 2:12 am

Re: Crime Cities (early Techland game, circa 2000)

Postby tfishell » Wed Nov 26, 2014 8:30 pm

Stiletto - thanks for your lengthy detailed response! Though you didn't have to write all that up as I, unfortunately, still have issues understanding the technical details, even ones that may seem basic to others here.

Question: do you believe in most cases this game would need an emulator like nGlide to render correctly on modern machines, or would it actually be better off without the emulation wrapper? (I wasn't sure if what you were saying about "So in the case of Crime Cities and Glide, it's kinda ... pointless when it already can use Direct3D either through the ancient MS OpenGL for Win9x or through TCD3D" meant the game runs well without the need for emulation.) Essentially I'm curious as to what GOG would want do, tech-wise but cost-efficient, to get the game running on modern machines. (don't work for GOG but am a big fan, just fyi :P)

And d'oh, I thought it said 2013 instead of 2003. Yes, not recent at all. :P

Also, does VOGONS have a "master list" of obscure 3D games from the mid-90s up until the early 2000s? It might be interest to browse that.

Gamecollector - thanks for your response too. Perhaps you could answer the question above, too.

Gamecollector
Posts: 940
Joined: Fri Jan 07, 2011 9:29 am

Re: Crime Cities (early Techland game, circa 2000)

Postby Gamecollector » Wed Nov 26, 2014 9:39 pm

Well, if the game uses openGL - there are only few cases when a miniGL/wrapper is better:
1) Videocard drivers are created by asshands and render something incorrectly. The best example - ATi + negate blending. Or ATi + 8-bit color modes (all q1 engine games). Or Ati... well, you got the idea. :)
2) OpenGL is back compatible, but this compatibility isn't 100%. The result is hardware dependant. Example - Grand Prix Legends OGL renderer = black lines on the sky (because of GL_CLAMP_TO_EDGE, it was the default method prior to OGL 1.2).
3) Necro$oft or someone else have removed the OGL 1.x-2.x support in OS (because in OGL 3.x+ this support is optional).
In all other cases the better choice (faster, more options, more quality etc) is the videocard OGL ICD aka default opengl.
Asus P4P800 SE/Pentium4 3.2E/2 Gb DDR400 (3-3-3-8),
Radeon HD3850 Agp (Sapphire), Catalyst 14.4 (XpProSp3).
2 Voodoo2 12 MB (SLI), Win2k drivers 1.02.00 (XpProSp3).

User avatar
Zeus
Site Admin
Posts: 1473
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: Crime Cities (early Techland game, circa 2000)

Postby Zeus » Thu Nov 27, 2014 3:27 pm

Claiming an API wrapper to another as native API support is like calling Direct3D OpenGL games as Glide. Direct3D also goes through similar chain to your graphics driver.

Native glide = GAME.EXE -> glide2x.dll/ovl || glide3x.dll

Native glide != GAME.EXE -> opengl32.dll (in folder) -> glide2x.dll
Native glide != GAME.EXE -> opengl32.dll (in system) -> 3dfxvgl.dll -> glide3x.dll

Native glide != GAME.EXE -> d3dim.dll -> glide2x.dll
Native glide != GAME.EXE -> d3drm.dll -> glide2x.dll

It's even more complicated. Microsoft APIs weren't wrapped to Glide, only OpenGL.

Stiletto wrote:Still, wrapper authors like Zeus and game collectors like, um, Gamecollector have included these sort of games in their compatibility testing because wrappers require lots of testing with all sorts of games.

I add them because my list is a "compatibility list", not a "native Glide games list".
But because so many people failed to notice the difference I decided to split it into groups. Now you can discard MiniGL group very quickly and there you go - you have native Glide games list. Also no more accusations for promoting OpenGL games as native Glide. ;)

Gamecollector
Posts: 940
Joined: Fri Jan 07, 2011 9:29 am

Re: Crime Cities (early Techland game, circa 2000)

Postby Gamecollector » Thu Nov 27, 2014 7:42 pm

My "minigl" glide list have the warning: Voodoo1/2/Rush/Banshee/3 OGL ICD is just OpenGL -> Glide wrapper, so - any OGL 1.x (1.1?) game can be "glide".
The example of the above configuration - Matrox Mystique + Voodoo2 + WinME. Or just run glsetup with Voodoo2, it will change the default opengl to 3dfxvgl.

I have added 2 types of OGL games to this list:
1) The game or the game config tool can select minigl/3dfxvgl/3dfxogl as a renderer. There is 1 exception - Daikatana, only the version 1.2 has this option...
2) Several q3engline games, because the early q3 engine have the backup rendering query. If opengl32.dll fails - the game try to use 3dfxvgl.dll automatically.
Voodoo1/Rush/Banshee/3 use 3dfxogl.dll as the name for OGL ICD, so maybe there are games with "Voodoo1 minigl support". But I don't have a real hardware to test this.
Asus P4P800 SE/Pentium4 3.2E/2 Gb DDR400 (3-3-3-8),
Radeon HD3850 Agp (Sapphire), Catalyst 14.4 (XpProSp3).
2 Voodoo2 12 MB (SLI), Win2k drivers 1.02.00 (XpProSp3).

Stiletto
Posts: 44
Joined: Sat Apr 10, 2010 6:55 pm

Re: Crime Cities (early Techland game, circa 2000)

Postby Stiletto » Fri Nov 28, 2014 4:35 pm

tfishell wrote:Question: do you believe in most cases this game would need an emulator like nGlide to render correctly on modern machines, or would it actually be better off without the emulation wrapper? (I wasn't sure if what you were saying about "So in the case of Crime Cities and Glide, it's kinda ... pointless when it already can use Direct3D either through the ancient MS OpenGL for Win9x or through TCD3D" meant the game runs well without the need for emulation.) Essentially I'm curious as to what GOG would want do, tech-wise but cost-efficient, to get the game running on modern machines. (don't work for GOG but am a big fan, just fyi :P)


No idea. As GameCollector replied, it may work best for GOG to configure the game for OpenGL rendering, or for Direct3D rendering, or for Glide rendering through a Glide wrapper. Never really sure until you try on a bunch of different hardware and operating systems until you see what works best as a long-term solution, plus taking what the game publisher might recommend these days, plus features gamers might want (rendering to larger resolutions than the game normally supported, for example). That is why GOG undoubtedly has employees whose job it is to discover how best an old game can be made to run in modern operating system - and these employees probably putting in hours of research to see what gamer communities have discovered regarding how to do this across the Internet.

tfishell wrote:Also, does VOGONS have a "master list" of obscure 3D games from the mid-90s up until the early 2000s? It might be interest to browse that.


Not really. Mobygames does of course.

The closest VOGONS comes to such a list is a list of 3D games designed for 3D rendering APIs *other* than 3dfx Glide, SGI/Khronos OpenGL, or Microsoft Direct3D. Generally these are 3D APIs for which there are no wrappers (or videocard emulation) YET - PowerVR PowerSGL, nVidia NV1, Matrox MSI, etc. Accordingly some of these games are rather obscure, especially once you start looking at the ones described as exclusives.
http://www.vogons.org/viewtopic.php?f=46&t=33483

tfishell
Posts: 25
Joined: Thu May 17, 2012 2:12 am

Re: Crime Cities (early Techland game, circa 2000)

Postby tfishell » Tue Dec 02, 2014 5:43 am

Interesting. Thanks again for the response!

conar123
Posts: 1
Joined: Thu May 19, 2016 10:58 am

Re: Crime Cities (early Techland game, circa 2000)

Postby conar123 » Thu May 19, 2016 11:06 am

Stiletto wrote:
tfishell wrote:Question: do you believe in most cases this game would need an emulator like nGlide to render correctly on modern machines, or would it actually be better off without the emulation wrapper? (I wasn't sure if what you were saying about "So in the case of Sealing Arrest Recordsand Glide, it's kinda ... pointless when it already can use Direct3D either through the ancient MS OpenGL for Win9x or through TCD3D" meant the game runs well without the need for emulation.) Essentially I'm curious as to what GOG would want do, tech-wise but cost-efficient, to get the game running on modern machines. (don't work for GOG but am a big fan, just fyi :P)


No idea. As GameCollector replied, it may work best for GOG to configure the game for OpenGL rendering, or for Direct3D rendering, or for Glide rendering through a Glide wrapper. Never really sure until you try on a bunch of different hardware and operating systems until you see what works best as a long-term solution, plus taking what the game publisher might recommend these days, plus features gamers might want (rendering to larger resolutions than the game normally supported, for example). That is why GOG undoubtedly has employees whose job it is to discover how best an old game can be made to run in modern operating system - and these employees probably putting in hours of research to see what gamer communities have discovered regarding how to do this across the Internet.

tfishell wrote:Also, does VOGONS have a "master list" of obscure 3D games from the mid-90s up until the early 2000s? It might be interest to browse that.


Not really. Mobygames does of course.

The closest VOGONS comes to such a list is a list of 3D games designed for 3D rendering APIs *other* than 3dfx Glide, SGI/Khronos OpenGL, or Microsoft Direct3D. Generally these are 3D APIs for which there are no wrappers (or videocard emulation) YET - PowerVR PowerSGL, nVidia NV1, Matrox MSI, etc. Accordingly some of these games are rather obscure, especially once you start looking at the ones described as exclusives.
http://www.vogons.org/viewtopic.php?f=46&t=33483

thanks a lot because I found this game be quite interesting and entertaining because it is connected to the crime and punishment.This is a 3D game so,everybody will enjoy while playing.


Return to “General”

Who is online

Users browsing this forum: No registered users and 1 guest