Gamestudio Links
Zorro Links
Newest Posts
Trading Journey
by howardR. 04/28/24 09:55
Zorro Trader GPT
by TipmyPip. 04/27/24 13:50
Help with plotting multiple ZigZag
by M_D. 04/26/24 20:03
Data from CSV not parsed correctly
by jcl. 04/26/24 11:18
M1 Oversampling
by jcl. 04/26/24 11:12
Why Zorro supports up to 72 cores?
by jcl. 04/26/24 11:09
Eigenwerbung
by jcl. 04/26/24 11:08
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
1 registered members (Nymphodora), 490 guests, and 7 spiders.
Key: Admin, Global Mod, Mod
Newest Members
wandaluciaia, Mega_Rod, EternallyCurious, howardR, 11honza11
19049 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
A6 handles at least 3.3333 times more 'live' actors than A7!? #297819
11/10/09 05:52
11/10/09 05:52
Joined: Oct 2004
Posts: 1,655
T
testDummy Offline OP
Serious User
testDummy  Offline OP
Serious User
T

Joined: Oct 2004
Posts: 1,655
Most of a 'toy' sample was finally converted from C-Script to Lite-C.
It seems, in a sense, much, if not most of the functionality was 'restored'.

A6 C-Script sample had:
Code:
3rd person view (but several cameras)
*movement
	idle / stand, crouch, walk, run, jump, crouch, swim
	fall damage
*3 piece actors (attached)
	upper, lower, and weapon
	separate animation for upper and lower body
	attack works while walking, crouching, crouch walking, swimming, jumping
	upper body rotates with aim
*buy and drop sword and crossbow 'ai' troops
*'ai' avoids obstacles and other actors
*'ai' moves and attacks similar to player (...um)
*'ai' within hearing dist of player accepts commands defend, seek, and follow
*'ai', player and other objects drop money
*pickups (ammo, health, coins)
*buy ammo
*crowded spaces
*catchy fire (no smoke though)
*3 teams (selectable)
*me lee combat
	sword (stab, slash, stab in different directions)
*projectile combat
	crossbow 
	pistol
	shotgun
	ak47
*explosive combat
	mine 
	time bomb
	(explosions push actors around)
*works on older machines (with lots of actors)
*no grannies in 3D
*all above (and more) working in multi-player (LAN)
*moderately tested and used somewhat regularly



For the sparkling samples in question (not enclosed), on the newer machine here, before dropping to ~10-20FPS, it seemed that the following number of 'live' actors can be spawned in a certain level:
using A6 COM and C-Script, 80 actors or more
using A7 COM and Lite-C, 24 actors or less

With the A6 COM C-Script implementation, the old AABB collision instructions are used with a BSP level, and with the new A7 COM Lite-C implementation, it is assumed that the newer collision instructions are used (<- multiple tests with collision function toggles), but during the tests, water collision checks weren't even enabled for the newer implementation.

Also, a modified version of the move example featured in the (most pertinent version of) the manual is used in the newer implementation, but in the older implementation, some of the movement code might readily resemble an unnecessarily complex, monstrous A5 template freak great grand child. (The code is clean, clear and concise by the standards imposed here.)
The arrangement of the older implementation appears to be, not less, but more complex than it's newer cousin.

Although such 'preliminary results' might be moderately disappointing, they might not be all that surprising.

Should they be?

Instead of several hundred MB videos falsely-embedded in the page we have:

(some simple definitive impressions of an ultimately unquestionable nature:)

A6 COM and C-Script does 80+ actors

A7 COM and Lite-C does only 24 or less actors


...BUT, maybe it is because those other A7 actors are blue?
?
?

Quoting some version of the manual:
Quote:

Engine updates normally render faster than their predecessors - and no update ever was slower. Nevertheless, whenever a new engine update comes out or a new video driver is released, some users inevitably complain about having 'less fps' than before. Why is that?

In some rare cases, the 'less fps' is not just a feeling - the frame rate is indeed a little slower in a certain situation.


Quote:
The A7 engine is faster than the A6 engine, and newer engine versions are faster than older engine versions.

terms: PRO BSP AABB collision performance blue backwards-compatible A6 mode


Re: A6 handles at least 3.3333 times more 'live' actors than A7!? [Re: testDummy] #297820
11/10/09 07:19
11/10/09 07:19
Joined: Jul 2000
Posts: 27,986
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 27,986
Frankfurt
A7 renders far more models than A6. Also, lite-C is much faster than C-Script. Therefore your performance problem has a different reason, probably in your code. You can use the F11 panel and the timer function to find the reason of your problem.

http://manual.3dgamestudio.net/framerate.htm

Re: A6 handles at least 3.3333 times more 'live' actors than A7!? [Re: testDummy] #297821
11/10/09 07:22
11/10/09 07:22
Joined: Mar 2006
Posts: 3,538
WA, Australia
J
JibbSmart Offline
Expert
JibbSmart  Offline
Expert
J

Joined: Mar 2006
Posts: 3,538
WA, Australia
What version number of each are you using?

Jibb


Formerly known as JulzMighty.
I made KarBOOM!
Re: A6 handles at least 3.3333 times more 'live' actors than A7!? [Re: JibbSmart] #297831
11/10/09 09:19
11/10/09 09:19
Joined: Oct 2004
Posts: 1,655
T
testDummy Offline OP
Serious User
testDummy  Offline OP
Serious User
T

Joined: Oct 2004
Posts: 1,655
versions used for comparison tests were:
A6.60 Commercial
and
A7.80.1 Commercial

There are obvious collision-related differences between the old and new implementations, so some focus may go there.

The older implementation was intentionally written using the older collision functions, because, at the time, it seemed that the newer collision instructions offered too great of a performance hit for a large number of actors.
(It would seem a 'quick' collision toggle was written into the older implementation, so that old and new collision instructions could be swapped.)
In memory servers, there is evidence which might suggest that other users thought similarly. Use of the forum search function, might yield entries of relevance. Certainly, a few names come to mind.

With an upgrade / update to the newer A7 version, the desirable mix might have included the supposedly increased flexibility of Lite-C, with most of the speed of the previous version (A6), for similar implementations.

Re: A6 handles at least 3.3333 times more 'live' actors than A7!? [Re: testDummy] #297835
11/10/09 09:25
11/10/09 09:25
Joined: Sep 2003
Posts: 929
Spirit Offline

Moderator
Spirit  Offline

Moderator

Joined: Sep 2003
Posts: 929
Its easy to see that A7 is way faster than A6, just run the same project in A7 and A6.

But when you dont want to use AABB then you should compile your level in A7 mesh mode. A6 levels with OBB are slower than A7 levels with OBB. This has nothing to do with A6 and A7, it seems you were just confusing AABB and OBB.

Re: A6 handles at least 3.3333 times more 'live' actors than A7!? [Re: Spirit] #298037
11/11/09 15:15
11/11/09 15:15
Joined: Oct 2004
Posts: 1,655
T
testDummy Offline OP
Serious User
testDummy  Offline OP
Serious User
T

Joined: Oct 2004
Posts: 1,655
Quoting jcl.
Quote:
You can use the F11 panel and the timer function to find the reason of your problem.

Thank you.
??
The F11 debug functions were used to note which hull / hull dimensions were active.
--it almost seemed like there was some hull type (NARROW / FAT) reversal
----with values for NARROW hulls appearing for those with FAT hulls and visa-versa?
The timer function was used to note performance differences, and help determine which collision mode was active based on those differences.
??
Quoting Spirit.
Quote:
it seems you were just confusing AABB and OBB.

Probably, there is / was some confusion here on how to properly set up and use the older collision functionality (AABB) in A7.?
With some changes, the number of actors handled in the same level space appears to be much greater now.
Possibly, the most relevant changes were to map compiler options.
compiler options:
"Build BSP Map"
"Create Meshes" OFF
(hull sizes)

Re: A6 handles at least 3.3333 times more 'live' actors than A7!? [Re: testDummy] #298040
11/11/09 15:32
11/11/09 15:32
Joined: Jul 2000
Posts: 27,986
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 27,986
Frankfurt
No, the FAT / NARROW hulls and the OBB / AABB collision systems work exactly the same way in A6 and A7.

A6 to A7; AABB collision setup (for true blue dummies) [Re: jcl] #298241
11/13/09 04:35
11/13/09 04:35
Joined: Oct 2004
Posts: 1,655
T
testDummy Offline OP
Serious User
testDummy  Offline OP
Serious User
T

Joined: Oct 2004
Posts: 1,655
a potential future dummy idiocy reducer passage for this event:
Quoting Gamestudio Manual version 7.80 Juli 31, 2009 (near bottom of "updating" entry):

Quote:
AABB is only supported in A6-style BSP levels that don't contain concave blocks and are compiled without the Create Meshes and Merge Across Leafs options.


for AABB and A7 map compiler options it is (?):
* "Build BSP Map"
* No "Create Meshes"
* No "Merge Across Leafs"
* set hull sizes

Quoting Gamestudio manual version 7.80 Juli 31, 2009:
Quote:
All map entities should be compiled with the same hull sizes as the level.


Quote:
4 predefined vectors contain the current level's hull box sizes for evaluation in functions: hull_narrowmin[3], hull_narrowmax[3], hull_fatmin[3], and hull_fatmax[3]. They contain the x, y, z minimum and maximum values of the narrow and fat hulls.

Some values seemingly related to those 4 predefined vectors were accessed in Lite-C in a way similar to this:
Code:
hull_narrowmax.x
hull_narrowmax.y
hull_narrowmax.z

hull_narrowmin.x
hull_narrowmin.y
hull_narrowmin.z

hull_fatmax.x
hull_fatmax.y
hull_fatmax.z

hull_fatmin.x
hull_fatmin.y
hull_fatmin.z



Quoting jcl.
Quote:
No, the FAT / NARROW hulls and the OBB / AABB collision systems work exactly the same way in A6 and A7.

OK. Thank you, jcl.




Moderated by  old_bill, Tobias 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1