Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - raft

Pages: 1 ... 127 128 [129] 130 131 132
Support / Re: Question: Models, lighting, and more.
« on: November 06, 2005, 01:22:07 pm »
Quote from: "Raven"
I'm wondering what the best way would be for me manage this. There's also the question of object placement: Figuring out where to place objects like "Healthpacks" for example.

possibly not best way, but i find this very handy:
i either:
* place dummy objects to mark those positions and save them in a seperate file (like lights.3ds) and then use the center of those objects to place lights
* again place dummy objects but save thier positions with max script (faster loading time and less space)

Code: [Select]
r a f t

Support / Re: serial version uid
« on: November 03, 2005, 05:56:18 am »
Quote from: "EgonOlsen"
you can't deserialize old stuff with a changed class. So where is the actual difference?

you can, even if you changed the class incompatibly. you can change method names, signatures even add new fields (they are simply set to nulls or zeros during deserialization). i'm not sure what happens if you change field types or remove a field but the others dont break deserialization

Code: [Select]
r a f t

Support / serial version uid
« on: November 02, 2005, 02:00:08 pm »
egon, can u please add a serial version uid to serializable classes ? it becomes incompatible with the previous version and it breaks loading previously serialized objects. sun suggests it too and it wont hurt for sure

Code: [Select]
private static final long serialVersionUID = 999L; // or whatever long

of course you can change it in time when it is necessary (such as when internal fields are not backward compatible)

and when did you update the site, i must have missed it. it looks nice :wink:

Code: [Select]
r a f t

Projects / ┐how much pleople still using jpct?
« on: October 29, 2005, 08:25:12 pm »
although not reading all posts, i'm here too :wink:
Code: [Select]
r a f t

Projects / aptal karga (foolish crow)
« on: October 25, 2005, 12:17:33 pm »
if you say so..  :D

Projects / aptal karga (foolish crow)
« on: October 25, 2005, 04:40:37 am »
if you say so..  :roll:

Projects / aptal karga (foolish crow)
« on: October 24, 2005, 10:53:41 am »
as i know, ack's are only sent in response to other packages, as receipts. if application doesnt send any data, no packages will be transfered. when the socket is closed (either manually or by an application crash) a connection reset or whatever package is sent to notify peer. but i'm not sure, i dont know much about tcp as i said. who cares, as long as java net api's keep this much high level :wink:

Quote from: "rolz"
p.s. nice to see you people back after summer hiatus :)
 thx :D

Code: [Select]
r a f t

Projects / aptal karga (foolish crow)
« on: October 24, 2005, 10:13:40 am »
Quote from: "rolz"
regarding heartbeat what transport do you use for the game - HTTP or just plain TCP/IP or UDP ? I assume in case when you use connected sockets you will not need heartbeat at all

no udp or http. i use primarily tcp and for some criticial state information rmi (my type safety obsession :roll: ) i'm afraid heartbeat is necessary even for tcp sockets. otherwise you cannot detect -for instance- an unplugged network cable during inactivity.

i was testing karga in a friends' wireless network. they somehow disconnected but the server and even the clients didnt detect it. i dont know much about tcp low levels but i cannot find any other explanation for this

Quote from: "rolz"
regarding serialization - are you sure you need to send mesh data over network ? ;) You may want to choose lightweight objects with minimum required data - like name, gender, body type, hair color and so on - and a factory on client side that will create 3D objects from lightweight ones.

lol, you got me wrong. i'm not sending mesh data over network for sure. i was talking about about loading animation meshes from serialized (instead of 3ds or md2) files during startup ;)

thanks for the suggestion, it sounds good. i do something similar to your 'incremantal serialization' as i wrote in my first jpct days. i believe, using transient fields in cooperation with readObject and writeObject methods may significantly lower the necessary space for serialized meshes or other jpct objects. helge are you with us ? :wink:

Code: [Select]
r a f t

Projects / aptal karga (foolish crow)
« on: October 24, 2005, 01:53:48 am »
since my last post:

* added jump
* some gui impovements and add-ons
* added 'dont see a user' option. (both sides simply dont see each other anymore) this has no take back at the moment so use it carefully ;-)
* added one way (client to server) heart beat mechanism. this is certainly necessary to detect network failures (especially in wireless ones)
* added basic i18n (internationalization) support. translated most parts to turkish but i've noticed that it's really hard to use turkish in computer generated messages :shock: for instance prepositions are in form of suffices which change depending on both wovels and last part of the word :evil:
* changed the way animations are loaded (from pre-serialized data). this takes 25% much space (than 3ds) but loads almost 20 times faster.
* added stand and talk animations (well in fact only the mechanism, animations are dummy). paired animations (like kissing each other) is coming soon. stand by ;)
* prepared a formal business plan. for god's sake, should i ever able to find resources for this project  :roll:

btw, i still think much can be done to decrease the serialized data size (with custom writeObject(..) and readObject(..) methods). even the mesh of a simple cube takes 2.5k space when serialized  :?:

Code: [Select]
r a f t

Support / Undersampling
« on: October 23, 2005, 10:47:44 pm »
for the ones who use software renderer, using a small sized FrameBuffer and then scaling it to screen may be a better alternative to under sampling.

i didnt make any comprehensive tests but it seems this way peforms better than under sampling. furthermore one can use any sampling ratio. i remember i read something like sun graphics engineers suggest scaling images on the fly (i dont know why)

btw, assuming all others the same, can we say rendering time is proportional to FrameBuffer's area ?

Code: [Select]
r a f t

Projects / Dissapointed
« on: September 28, 2005, 03:22:29 pm »
uml maybe quite useful for some cases. i mean not to use it for code generation or other purposes but use it for planning your program (or parts of it) before starting coding

in general i find drawing diagrams (not necessarily uml)  of ideas extremely useful as it forces one to think in depth and find possible errors, mis-thoughts earlier. as the old preverb suggests 'one diagram worths a thousand words'

in karga, i dont use any uml software but try to take my notes as diagrams on paper

another point i think very important is to make as much tasks done automatically as i can. for instance i use ant not only as a build tool but for copying files, zipping them etc. as humans make errors on these kind of tasks and easily forgot the procedure. and of course it's a real pain and source of discouragement to do the same boring things over and over again

this may be considered as a matter of taste but i also find it very useful and important to throw exceptions from methods (as opposed to returning nulls etc) and make things as much type-safe as possible. this way errors can be detected earlier. i love the idea of using the compiler to its limits to find errors

at a glance these are what i think about software development cycle

i wish you luck with your game :wink:
Code: [Select]
r a f t

Projects / aptal karga (foolish crow)
« on: August 09, 2005, 12:52:20 pm »
obviously they are :shock:

one note about transparent panels, maybe it may help another addict :wink:

i found my self doing a common mistake. it is written every where but i did it  :oops: they say 'dont put your rendering code into your paint method, but simply copy a pre-rendered image' swing calls paint of background component everytime the foreground transparent one is repainted. and if you do a render as me in your paint method.. !$%@

Code: [Select]
r a f t

Projects / aptal karga (foolish crow)
« on: August 08, 2005, 08:20:11 pm »
oops, forgot to login for post :oops:
and it is a 10x10 tile map. i cant correct it as i posted as guest :oops:

Projects / aptal karga (foolish crow)
« on: August 04, 2005, 06:21:25 am »
as rolz asked for useful ideas, here is one. i use it since my first viewer prototype and find very convenient

if you use xml for static configurations (ie. not changed during program run) this is a simple receipt to make it robust and light-weight

* use jibx to convert your xml file to a tree of java objects. this eliminates those regular xml parsing issues which are both painful and error-prone
* serialize your object tree to a file
* re-compile the classes that make the object tree (as jibx uses bytecode enhancement, after using it your classes gets fatter and you need jibx runtime in your classpath to use them)
* now you can de-serialize that file in your program and use it without jibx runtime
* dont forget to manually assign a serial version id to your serializable classes -as below- otherwise above will fail

another advantage of this method is, since jibx uses reflection, you can make your configuration classes very small: with no setters-getters and almost all fields final

the result is, you get rid of xml parsing code and have a pure type-safe configuration in very little space

Code: [Select]

public class SomeConfigurationClass implements {
    private static final long serialVersionUID = 999;  // 'manually' assign serial version id
    public final String aStringValue = null;
    public final SomeOtherConfClass aComplexConfValue = null;
    // no need even for a constructor

Code: [Select]
r a f t
cheers :wink:

Projects / Technopolies
« on: August 02, 2005, 06:24:23 pm »
Quote from: "rolz"
btw, what is your progress with hair/cloth/grass/tree animation ? got any useful ideas to share  ? ;)

the mechanism for clothing, hair and other accessories is basicly complete. as i wrote in my thread all clothing -including skin color, make up etc- is based on generating textures on the fly. hair and other mesh based accessories (glasses, earing etc) depend on animations saved via max-script to text files

if i dont break or change something (i will for sure :wink: ) it is a matter of modelling and configuration

i'm now working on terrain structure and a simple LoD (level of detail) mechanism for performance reasons. i will write in detail when completed

what is that grass/tree animation btw ?
Code: [Select]
r a f t

Pages: 1 ... 127 128 [129] 130 131 132