File: ChangeLog

package info (click to toggle)
sear 0.5.0-5
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 3,408 kB
  • ctags: 2,580
  • sloc: cpp: 14,902; sh: 10,890; makefile: 172
file content (1467 lines) | stat: -rw-r--r-- 59,567 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
2004-07-19  Simon Goodall  <simon@simongoodall.co.uk>

	* Makefile.am, data/Makefile.am, scripts/Makefile.am: Move data and
	  scripts installation into data and script Makefile.am.
	* configure.in: Bump sear version number for release. Update for spec 
	  files and sear.in script
	* sear-media.spec.in: Remove WFUT.jar from rpm
	* sear-updater.spec.in: Make rpm containing WFUT.jar
	* sear.spec.in: Remove requires that are derived from other libs. Add missing requires. Update for new script / binary files
	* src/FileHandler.cpp: Fix code formating.
	* src/Makefile.am: Update for new exec script
	* src/System.cpp: Fix code formatting. Do not print cmd line args.
	* src/sear.in: Script file to run updater if found before starting
	  sear.bin

2004-07-14  Simon Goodall  <simon@simongoodall.co.uk>

	* sear-media.spec.in: Initial version of spec file to generate media rpm
	  using WFUT.
	* sear.spec.in: Updated for current sear state
	* common/Utility.h: gcc 3.4 fixes
	* renderers/TextureManager.cpp: Fix warning
	* src/Graphics.cpp: Disable GUI rendering in prep for release

2004-06-30  Al Riddoch  <alriddoch@zepler.org>

	* src/Character.cpp: Use old style Atlas Message typedefs to keep
	  compatable with 0.4.93.

2004-06-30  Simon Goodall  <simon@simongoodall.co.uk>

	* environment/TerrainRenderer.cpp: Move sea level calculation out of loop (thanks to JohnFlux)
	* loaders/cal3d/Cal3D.cpp: Use a longer blend time between animations
	* src/FileHandler.cpp: Include errno.h for gcc 3.4
	* src/Graphics.cpp, src/Light.h: Use enum for colour channels
	* src/LightManger.cpp: Code tidying

2004-06-28  Al Riddoch  <alriddoch@zepler.org>

	* common/Use.h, common/Wield.h, common/operations.cpp: Add
	  new Use and Wield op classes.

	* src/Character.cpp, src/Character.h: Add new use and wield
	  commands to character using new ops.

2004-06-26  Simon Goodall  <simon@simongoodall.co.uk>

	* src/system.cpp, src/Filehandler.h, src/FileHandler.cpp: Change storage type from list to set to avoid duplicates. Make code use typedef for FileList

2004-06-26  Simon Goodall  <simon@simongoodall.co.uk>

	* renderers/GL.cpp: Fix bug where sun light source was disabled	

2004-06-26  Simon Goodall  <simon@simongoodall.co.uk>

	* renderers/GL.cpp: Remove some commented out code

	* src/Graphics.cpp, src/Graphics.h,src/Light.h, src/LightManager.cpp, src/LightManager.h, src/System.cpp: Finish basic light manager code. Create a new light source for every "fire" object that is visible. Read/Write light properties from config file if they exist.


2004-06-25  Simon Goodall  <simon@simongoodall.co.uk>

	* src/Character.cpp, src/Character.h: Allow setting names to /make cmd.

2004-06-25  James Turner  <james@worldforge.org>

	* environment/SkyDome.cpp: fix fog color calculation to include
	  a 0.5 offset so we blend two values correctly at integral pixels.

2004-06-25  Simon Goodall  <simon@simongoodall.co.uk>

	* src/ModelLoader.h: Fix cut and paste error where offset_x was ignored

2004-06-24  Simon Goodall  <simon@simongoodall.co.uk>

	* Add a Z rotation option to model records to rotate odd objects

2004-06-24  James Turner  <james@worldforge.org>

	* Add support for world editing (via an admin account) using commands
	  bound to keys. New functionality in Editor class, created by system,
	  which will handle all the privileged commands.
	
	* Make the command binder handle modifier keys: preprend various magic
	  strings based on the modifier state.
	  
	* Update standard bindings.cfg with some default bindings for the
	  edit keys.

2004-06-23  Simon Goodall  <simon@simongoodall.co.uk>
	* loaders/3ds.cpp,loaders/3ds.h: Make use of "masking" function to allow alpha mapped textures during selection. Remove uneeded code.

2004-06-23  Al Riddoch  <alriddoch@zepler.org>

	* src/Character.cpp: Fix the position of entities passed to other
	  characters.

2004-06-22  Simon Goodall  <simon@simongoodall.co.uk>
	* renderers/GL.cpp: Fix clamping

2004-06-22  Simon Goodall  <simon@simongoodall.co.uk>
	* renderers/GL.cpp: clamp min light level to 0.15f so we can still see at night

2004-06-21  Simon Goodall  <simon@simongoodall.co.uk>
	* src/ObjectRecord.h: Fix bug where updated bbox from server would ignore scale_height option in model records

2004-06-21  Simon Goodall  <simon@simongoodall.co.uk>
	* loaders/3ds.cpp, loader/3ds.h, loaders/3ds_Loader.cpp, loaders/cal3d/Cal3d_Loader.cpp,src/ModelLoader.h,src/ModelRecord.h: Add a scale by height option to model records and use it in the 3ds and cal3d loader

2004-06-21  Simon Goodall  <simon@simongoodall.co.uk>
	* src/WorldEntity.cpp: Add action events for mode and action changed
	* src/Character.cpp: Rename action event to avoid name clashes
	* src/Model.h, src/ObjectRecord.h, src/WorldEntity.cpp: Dyamically
	  resize models when bbox changes.

2004-06-22  James Turner  <james@worldforge.org>

	* Make joystick axes configurable in general.cfg

2004-06-21  Al Riddoch  <alriddoch@zepler.org>

	* src/Character.cpp: Add objtype to arguments of Set ops for
	  customizing characters.

2004-06-20  Simon Goodall  <simon@simongoodall.co.uk>
	* src/WorldEntity.cpp: Add a "swimming" mode check

2004-06-20  Simon Goodall  <simon@simongoodall.co.uk>
	* src/Graphics.cpp: Add missing check for draw_self from object_records;
	* src/Character.cpp, src/Character.h: Add /set_height command to change character height. Model height is not updated dynamically yet.
	* common/types.h, src/Frustum.h, src.Frustum.cpp, src/Graphics.cpp, src/WorldEntity.h, src/WorldEntity.h: Added code to orientate the bounding box to the quaternion of the entity. Add frustum check for this. Not enabled by default. Need to change method near the "Change method here" comment in src/Graphics.cpp

2004-06-20  Al Riddoch  <alriddoch@zepler.org>

	* loaders/3ds.cpp: Add in a scale transform when rendering 3ds
	  files which some models seem to need.

2004-06-20  Simon Goodall  <simon@simongoodall.co.uk>
	* loaders/BoundBox.cpp: Fix incorrect texture bug when using display lists

2004-06-15  Simon Goodall  <simon@simongoodall.co.uk>
	* loaders/3ds.cpp: Fix segfault on models with no texture through using unitialised values;

2004-06-19  Al Riddoch  <alriddoch@zepler.org>

	* environment/TerrainRenderer.cpp: Re-arrange terrain shaders, for
	  better looking hills.

2004-06-18  Al Riddoch  <alriddoch@zepler.org>

	* environment/TerrainRenderer.cpp: Be sure to use heap allocation
	  to big arrays, rather than stack.

2004-06-15  Al Riddoch  <alriddoch@zepler.org>

	* loaders/3ds.cpp: Only render meshes directly if the 3ds file does
	  not contain a node structure.

2004-06-15  Simon Goodall  <simon@simongoodall.co.uk>
	* Further appearance fixes. Now loads appearance at startup

2004-06-15  Al Riddoch  <alriddoch@zepler.org>

	* src/System.cpp, src/Character.cpp: Remove debugging output
	  that was slowing down rotation.

2004-06-15  Al Riddoch  <alriddoch@zepler.org>

	* src/Event.h, src/Event.cpp: Add a new event to explicitly send an
	  update to the server.

	* src/Character.h, src/Character.cpp: If the user moves the mouse,
	  avoid sending an update to the server if one has been sent recently.

2004-06-13  Simon Goodall  <simon@simongoodall.co.uk>
	* Initial workings to allow appearance attributes of character to be changed. /read_app reads the properties from the server. /set_app is used to set mesh and material properties. E.g. "/set_app mesh head 1" changes head mesh. "/set_app material head alternative" changes head material. /clear_app clears current settings

2004-06-13  Simon Goodall  <simon@simongoodall.co.uk>
	* Fix bug where the render active name function did select the correct state to render with.

2004-06-13  Al Riddoch  <alriddoch@zepler.org>

	* Fix up all the Makefile.am files so that distcheck works.

2004-06-11  Al Riddoch  <alriddoch@zepler.org>

	* src/Render.h, renderers/GL.h, renderers/GL.cpp,
	  common/Utility.h, common/Utility.cpp:
	  Change some pass by value arguments to pass by reference
	  for efficiency.

2004-06-10  Al Riddoch  <alriddoch@zepler.org>

	* src/WorldEntity.h, src/WorldEntity.cpp,
	  src/Frustum.h, src/Frustum.cpp,
	  src/Character.h, src/Character.cpp:
	  Change some pass by value arguments to pass by reference
	  for efficiency.

	* gui/Workspace.cpp: Get rid of some annoying debug ouput.

2004-06-09  James Turner  <james@worldforge.org>

	* Updated method for computing the fog color, based on the current
	  horizon color. Rather than using readPixels, which is slow,
	  sometimes drastically so, store the first (bottom) row of
	  the atmosphere texture in client memory, and do our own
	  interpolation.

2004-06-09  Al Riddoch  <alriddoch@zepler.org>

	* gui/Workspace.cpp: Start writing event processing code.

	* gui/Window.h, gui/Window.cpp: Add interface to pass mouse motion
	  events to windows.

	* gui/Widget.cpp: Clean up formatting.

	* gui/event.h: Add enum for event types.

2004-06-09  Al Riddoch  <alriddoch@zepler.org>

	* renderers/GL.cpp: Tweak light parameteres to give a smaller but
	  brighter pool of light.

2004-06-09  Al Riddoch  <alriddoch@zepler.org>

	* renderers/GL.cpp: Enable character light source, and provide
	  some sensible defaults for it.

	* src/Graphics.cpp: Modify the place where character lighting is
	  applied to make it easier to control relative position to the
	  character.

2004-06-08  Al Riddoch  <alriddoch@zepler.org>

	* renderers/GL.cpp: Remove pointless call to glClear.

	* environment/SkyDome.cpp: Clear screen after reading back fog
	  colour which eliminates flickering sky, and makes stars twinkle.

2004-06-07  James Turner  <james@worldforge.org>

	* Fix linux compilation of stars code. Thank goodness
	  I have a Loonix box these days.

2004-06-07  James Turner  <james@worldforge.org>

	* Add star rendering to the environment code. Very simple while the
	  renderer integration issues are sorted out; in the future, will use
	  point sprites and colors. 
	  
	* Add a stars state to states.cfg
	
	* Add an unsigned 8-bit RGBA color to common/types.h
	
	* Add a long 'skirt' to the sky dome, and hence always use pure
	  black as the glClear color. We still need the glReadPixel hack for
	  getting the fog color, will address that in a future change.

2004-06-07  Al Riddoch  <alriddoch@zepler.org>

	* gui/Workspace.cpp, gui/Workspace.h, src/System.cpp: Pass
	  SDL events to the gui code.

2004-06-05  Al Riddoch  <alriddoch@zepler.org>

	* environment/TerrainRenderer.cpp: Implement culling entire terrain
	  chunks using the Frustum test. Big speedup.

2004-06-04  Al Riddoch  <alriddoch@zepler.org>

	* gui/Container.cpp: Implement addChild() and showAll().

	* gui/Button.cpp: Use addChild for adding child widget.

	* gui/Frame.cpp: Get rid of default size.

	* gui/Toplevel.cpp, gui/Toplevel.h: Implement top level widget.

	* gui/Window.cpp, gui/Window.h: Add methods to change geometry.

	* gui/Workspace.cpp, gui/Workspace.h: Remove test widget,
	  and add methods to allow widgets to install stuff.

	* src/System.cpp: Test out new Toplevel.

2004-06-03  Al Riddoch  <alriddoch@zepler.org>

	* gui/Button.cpp, gui/Button.h, gui/Container.cpp, gui/Container.h,
	  gui/Graphic.h, gui/Label.cpp, gui/Label.h, gui/Widget.h,
	  gui/Workspace.cpp, gui/Workspace.h: Add show interface to widgets
	  for when they are ready to be rendered.

	* gui/Toplevel.h, gui/Toplevel.cpp: Class for top level widgets.

2004-06-03  James Turner  <james@worldforge.org>

	* XCode project updates - want to be able to revert to this
	  version if I break stuff.

2004-06-03  Al Riddoch  <alriddoch@zepler.org>

	* gui/Window.h, gui/Window.cpp: Add coords and size, adding children,
	  and the render interface which allows us to render windows
	  as a hierarchy.

	* gui/RootWindow.h, gui/RootWindow.cpp: Implement render to
	  iterate over children.

	* gui/Frame.h, gui/Frame.cpp: Fix render interface to comply with
	  base class, and draw based on window coords.

	* gui/Container.h, gui/Container.cpp: Remove render interface, as
	  this widget type is not rendered. Implement constructor and
	  destructor.

	* gui/Workspace.h, gui/Workspace.cpp: Make workspace
	  a container, so it can hold top level widgets. Implement
	  rendering the rootwindow when draw is called. Add a demo
	  widget.

2004-06-02  Al Riddoch  <alriddoch@zepler.org>

	* gui/Workspace.cpp: Fix test gui drawing code, and make it use
	  vertex arrays. Add necessary states entry.

2004-05-30  Al Riddoch  <alriddoch@zepler.org>

	* renderers/TextureManager.cpp: Fix texture load error detection,
	  and make output a little more useful.

	* renderers/ImageUtils.h: Add newline to end of file.

2004-05-30  James Turner  <james@worldforge.org>

	* Change an assert() on texture load errors to something less
	  violent, just print an error and stop generating mip-maps.

2004-05-30  James Turner  <james@worldforge.org>

	* Refactor texture ID generation, to avoid manual resizing of the
	  STL containers (they behave smartly anyway). As a result, got
	  rid of m_texture_counter completely (use m_names.size() instead)
	  
	* Added a general config option, base_texture_level, and a console
	  command, /set_texture_detail, to allow playing with texture
	  detail at runtime.
	  
	* Cleaned up the TextureManager's interactions (or lack of) with 
	  the config system.
	  
	* Factored the image load code into a helper file, ImageUtils.cpp
	
	* Rewrote the mip-mapping to never use SGIS_GENERATE_MIPMAPS,
	  since it is hard to integrate with dynamic texture detail reduction.
	  This also allows us to use arbitrary texture storage formats in
	  the future, since the only call we make to load textures is
	  glTexImage2D diurectly.
	  
	* Added custom mip-mapping code to ImageUtils.cpp : not the nicest
	  code ever, but pretty simple and it seems to work.

	* Found a latent bug in the texture loader, where 8-bit (single channel)
	  surfaces were being treated as 32-bit. I have default these to
	  GL_ALPHA for the moment, but perhaps they should default to
	  GL_LUMINANCE? Need to ask Al and Simon.
	  
	* Removed the include of SDL_image.h from System.h, since only two
	  source files (System.cpp and ImageUtils.cpp) ever call SDL_image
	  functions.

2004-05-28  Al Riddoch  <alriddoch@zepler.org>

	* gui/Workspace.h, gui/Workspace.cpp: Hold reference to system object
	  in gui, for access to renderer etc. Add text rendering code.

	* gui/Widget.h: Remove rendundant render() interface.

	* src/System.h, src/System.cpp, src/Graphics.cpp: Add a gui Workspace
	  into the render loop.

2004-05-28  James Turner  <james@worldforge.org>

	* Refactor texture config code, so we default to using
	  mipmaps. Ensure we use findItem before calling getItem.
	* When mipmapping is enabled for a texture, make the
	  default MIN_FILTER be GL_LINEAR_MIPMAP_LINEAR
	* Add in inital (hard-coded) logic to use a different
	  base mipmap level.

2004-05-26  James Turner  <james@worldforge.org>

        * Remove <strstream> check from configure, and usage from
          Utility.h
        * Updated version of XCode project

2004-05-26  Al Riddoch  <alriddoch@zepler.org>

	* gui/Frame.h: Fix include typo.

2004-05-26  Al Riddoch  <alriddoch@zepler.org>

	* gui/*: Correctly put all the gui classes into the Sear namespace.

2004-05-24  Al Riddoch  <alriddoch@zepler.org>

	* renderers/TextureManager.cpp, renderers/StateManager.cpp,
	  renderers/default_font.h: Use pure alpha texture for font,
	  and enable blending and get smoother less aliased text.

2004-05-24  Al Riddoch  <alriddoch@zepler.org>

	* gui/*: Updated ground work for gui widgets.

2004-05-24  James Turner  <james@worldforge.org>

	* Fix the compass to actually point north. Ooops.
	* Add a fail() handler to sprite, falling back to the default
	  texture and a fixed size, currently 64x64
	* Add XCode project file
	
2004-05-23  James Turner  <james@worldforge.org>

	* Add in a Sprite class, including a new config file, and changes
	  to the TextureManager to interoperate with Sprites. The original
	  Sprite code was lifted from Al's work in Apogee and modified to
	  work in sear.
	* Add a Compass class to the gui files, again taken from Apogee
	  and modified.
	* Change Graphics to create a compass and update it's angle.
	* Add a 'sprite' state to the state config file

2004-05-23  Al Riddoch  <alriddoch@zepler.org>

	* src/Character.h, src/Character.cpp: Add a make command that
	  allows the character to attempt to create arbitrary in game
	  objects. Also, sneak in a GNU compliant changelog entry, in
	  the hope that Simon might pick up the habbit :)

2004-05-23 James Turner <james@worldforge.org>

	* Twiddle SDL_mixer includes to work with the Mac package, and not pull in SDL/SDL.h
	  in the header file (only needed in Sound.cpp)
	* Stub in a sound enable / disable command, not hooked up right now
	* Remove the OS-X image load code, and use the SDL_image framework instead
	* Remove #include of config.h in Utility.h, very naughty.

20th May 2004, Simon Goodall
 * More resize work

20th May 2004, Simon Goodall
 * Fix problem with texture vector resize
 * Fix problem with cal3d animations running too fast (varconf init error)
 * Add support for resizing the window by dragging borders. Needs testing on Win32 and Mac systems.

19th May 2004, Simon Goodall
 * Further varconf checks
 * Resize texture vectors if limit is reached.

17th May 2004, Simon Goodall
 * Futher missing stencil buffer fixes. Now try and create window. if that fails set use stencil to false and try again (if its already false, then we try twice anyway)

17th May 2004, Simon Goodall
 * Fix default calendar start time

17th May 2004, Simon Goodall
 * Fix bug in sky dome where only a quarter of it was rendered

17th May 2004, Simon Goodall
 * Further varconf find / get item fixes

14th May 2004, Simon Goodall
 * Add check on startup to see if we want to use the stencil buffer. Set general.cfg render_use_stencil to false to disable stencil buffer.

14th May 2004, Simon Goodall
 * Link skydome to calendar

14th May 2004, Simon Goodall
 * Allow cmd line parsing of args for general config
 * Link server time to calendar

13th May 2004, Simon Goodall
 * Allow custom specification of texture internal formats.

6th May 2004, Simon Goodall
 * Fix cursors

2004-05-02 James Turner <james@worldforge.org>
 * Remove processHome from System. The functionality can be re-added
  by modifying FileHandler::expandString if desired.

29th April 2004, Simon Goodall
 * Some preliminary use findItem to verify config item exists before querying it(only in GL class for now)
 * Actually tell the renderer to read the configuration
 * Fix Light initialisation
 * Remove some unneeded default general configs

28th April 2004, James Turner
 * Move all the file-related and path-related code out of System
   and into the FileHandler
 * Add OS-X and Win32 specific versions of various path locators
 * Change the default search order so CWd and home go before the
   install paths.
 
28th April 2004, Simon Goodall
 * Really fix the bad state stuff

28th April 2004, Simon Goodall
 * Fix the "bad state - 0" messages. Caused by trying to render a model before the states had been assigned.
 * Some variable init stuff added to GL
 * Removal of some unused functions and variables.
 * Rename member var command in System to m_command for clarity

28th April 2004, Simon Goodall
 * Do not try and render acitveName string if its empty

28th April 2004, Simon Goodall
 * Fix uninitialised variable that could cause variable substitution to fail
 * Fix missing call to GL invalidate

27th April 2004, Simon Goodall
 * Moved config.h checks to top of code file
 * Fixed config_h #ifdef's
 * Added missing copyright info
 * Updated copyright info
 * Fix wrong dates in changelog

27th April 2004, Al Riddoch
 * Re-write code that handles model map, so that NULLs never get inserted.

26th April 2004, Simon Goodall
 * Correctly backup default texture and font numbers during an invalidate call

27th April 2004, Simon Goodall
 * Some fixes for texture manager
 * Re-ordering of init to fix some texture issues

26th April 2004, James Turner
 * Move SkyDome init path into it's constructor
 * Remove statics that stop SkyDome re-initing correctly
 * Make re-init of Environment assert, should never happen (for now)

26th April 2004, Simon Goodall
 * More initialisation order fixes
 * Some code cleanups

26th April 2004, Simon Goodall
 * State manager invalidation stuff

26th April 2004, Simon Goodall
 * Added some config.h checks

26th April 2004, Simon Goodall
 * Added terrain invalidation code

26th April 2004, Simon Goodall
 * Removed old height maps
 * Updated states file

26th April 2004, Simon Goodall
 * Added invalidate stuff to models

26th April 2004, Simon Goodall
 * Removed getPixel function as it is not used

26th April 2004, Simon Goodall
 * Some refactoring to allow user def screen sizes again
 * Moved image loading code from System to TextureManager.
 * Some GL Context invalidation code for Textures

26th April 2004, Al Riddoch
 * More progress on base classes for gui code

26th April 2004, Simon Goodall
 * Removed old sky and terrain code
 * Removed slice loader code as it isn't used

25th April 2004, Al Riddoch
 * Started work on new gui code.

23rd April 2004, Simon Goodall
 * Further work on texture invalidation code
 * Added console command to call invalidate

23rd April 2004, Simon Goodall
 * /take now uses the first character returned by getCharacters if no id is specified.

22nd April 2004, Simon Goodall
 * Converted glBegin calls to vertex buffers in SkyDome

22nd April 2004, Simon Goodall
 * Update SkyDome to check existance of VBO's before using them

22nd April 2004, Simon Goodall
 * Change GL_BGR anf GL_BGRA to use GL_BGR_EXT and GL_BGRA_EXT for win32

22nd April 2004, Simon Goodall
 * Added normals to water to fix lighting problems
 * Disabled face culling on water so it is visible from both above and below
 * Fixed texture problem on 3ds models
 * Fixed some bugs in bounding box loader not sizing entities correctly when bbox coords where not in the expected orientation
 * Added arbitary rotation to cal3d objects, with a default 90.0f rotation for existing models
 * Added individual s and t texture clamping to fix skydome texturing
 * Changed default entity drop position to +1 X to avoid collision problems with server
 * Initialisation now prints available video modes
 * /identify now displays the mass of an object
 * Reduced default internal texture format to RGB5 and Alpha 1 (bits per pixel)
 

19th April 2004, Simon Goodall
 * Fixed blue / green mix up in cal3d loader

19th April 2004, Simon Goodall
 * Added terrain tracking for jetty entity

19th April 2004, Simon Goodall
 * Added check for mode type floating for terrain tracking

19th April 2004, Simon Goodall
 * Actually render the water this time

19th April 2004, Simon Goodall
 * Fix water transparency.
 * Draw water last to transparency work correctly
 * Water level now raises and lowers
 * Added player shadow from appogee
 * More skydome bits

19th April 2004, Al Riddoch
 * Add tracking of mouse clicks, for detection of dragging.
 * Implement mouse rotation of character in mouse_look mode, rather
   than just rotating camera.
 * Tweak character position on screen for usability.
 * Add code for handling joystick button presses.

19th April 2004, Simon Goodall
 * More terrain tracking stuff

17th April 2004, Simon Goodall
 * Added skydome code
 * Changed fog colour to match lower skydome colour
 * Added a globally accessable RenderSystem class to handle common rendering tasks such as texture changing and state changing.

12th April 2004, Al Riddoch
 * Add support to camera for immediate changes, and implement mouse controlled
   camera.

7th April 2004, Simon Goodall
 * More terrain tracking stuff

7th April 2004, Al Riddoch
 * Increase fog and far clip distances to get a bigger world view.
   Fix handling of character position to handle terrain visibility.

7th April 2004, Al Riddoch
 * First pass at analogue controller implementation. Can now run around the
   landscape, with strafing, and full view control.

6th April 2004, Simon Goodall
 * Fixed terrain height tracking

5th April 2004, Al Riddoch
 * src/System.h, src/System.cpp: Add interface for handling analogue input
   devices, like mouse and joystick. Add init code and test code for joystick.

2nd April 2004, Simon Goodall
 * Fixed bug where texture_2d state was becoming inconsistent with expected value

2nd April 2004, Simon Goodall
 * Fixed texture loading and switching in terrain
 * Fixed terrain state record 

1st April 2004, Simon Goodall
 * More changes for Mercator integration. commpiles, but not tested.

30th March 2004, Simon Goodall
 * Initial mercator support - imported code from apogee - prob wont compile

11th March 2004, Simon Goodall
 * Applied patch from ron to replace my atlas "give" with eris' give

2nd March 2004, Simon Goodall
 * Updated iss file
 * Set correct version nums for sage and eris

2nd March 2004, Simon Goodall
 * Bump version number to 0.4.7
 * convert to using SDL_main

6th February 2004, Simon Goodall
 * Changed CharacterList to CharacterMap to keep in line with Eris

28th January 2004, Simon Goodall
 * Allow models to be translated in x/y/z

26th January 2004, Simon Goodall
 * Some initial work for VBO's

26th January 2004, Al Riddoch
 * Fixed includes and code to work with latest Atlas-C++ and eris changes.

19th January 2004, Simon Goodall
 * Replaced Atlas specific code with calls to Avatar->*

19th January 2004, Simon Goodall
 * Fixes for latest Eris changes

10th December 2003, Simon Goodall
 * Fixes brokes configure.in

8th December 2003, Simon Goodall
 * Removed warning messages to get a green light

6th December 2003, Simon Goodall
 * Removed warning from configure to get a green light
 * Removed /cd and /cd_this_dir console commands and replaced with a variable expansion. E.g. ${SEAR_MEDIA} is the root of the media files for sear. (THIS BREAKS COMPAT WITH EXISTING MEDIA)
 * Fixed a segfault when cal3d loader couldn't load the skeleton file.

3rd December 2003, Simon Goodall
 * Some fixes to make sounds work again

3rd December 2003, Simon Goodall
 * Changed GL includes to use sage ones.
 * Fixed other build warnings

2nd December 2003, Simon Goodall
 * Fixed some build warnings

9th November 2003, Simon Goodall
 * Fixed bug where entities with types that had capital letters could not be matched to an object_record

27th September 2003, Simon Goodall
 * Updated for Atlas 0.4.90

16th September 2003, Simon Goodall
 * Added ^ in addition to ` for default binding for console toggle. This is for German keyboard layouts.

7th August 2003, Simon Goodall
 * Changed configure.in so it throws an error if lib3ds in not found

5th August 2003, Simon Goodall
 * Fixed some use of variables uninitialised

16th July 2003, Simon Goodall
 * Some cleanups

15th July 2003, Simon Goodall
 * Fixed bug where incorrect parent type was returned in WorldEntity::parent()
 * Fixed typos in Call3D loader when material properties had a cut and paste error
 * Removed some unrequired debug info

3rd July 2003, Simon Goodall
 * Changed default state to allow textures so default texture is visible regardless of datafiles
 * Made default key binding of "escape" to "/quit"
 * Added default records for modelhandler and objecthandler
 * Started to make use of a "media_root" variable

12th June 2003, Simon Goodall
 * Fixed object selection on imposters

12th June 2003, Simon Goodall
 * Fixed segfault caused by bad array indexing in NPlane loader

12th June 2003, Simon Goodall
 * Fixed some dealloc errs, mainly delete / delete []
 * Fixed problem caused by mutli texture units causing a problem. header defined 6 units, but this causes probs on cards with less than 6 units.

29th May 2003, Simon Goodall
 * Fixed Multitexturing.
 * Multitexturing is now determined via the statemanager code

2nd May 2003, Simon Goodall
 * String decls of ModelRecord now in code file to avoid compiler errors on some compilers
 * Removed mmgr.h from being included regardless of configure option in Calender.cpp

30th April 2003, Simon Goodall
 * Fixed states so they are now loaded and assigned to entities properly
 * Fixed siily selection bug caused by deleting the wrong bit of code
 * Fixed Cal3d Loader code to use new TextureManager entries
 * SetScale function now support any number of texture units
 * Moved SkyBox and Terrain initialisation time so they can load in the textures

29th April 2003, Simon Goodall
 * Updated ModelLoader to assign state ids to models

26th April 2003, Simon Goodall
 * Now send out refnos with Atlas ops

26th April 2003, Simon Goodall
 * Texture Manager class now uses default values for filters if they are not specified

23rd April 2003, Simon Goodall
 * Added state manager to GL class
 * fps now displayed in title

23rd March 2003, Simon Goodall
 * Intergrated texturemanager into GL class.
 * Added docs for new texture config format

11th March 2003, Simon Goodall
 * Added base code for texture manager class

11th March 2003, Simon Goodall
 * Cally models can now specify additional textures to those that were specified on material createion

8th March 2003, Simon Goodall
 * Fixed possible NULL ptr exception in Character.cpp when calling entity->getContainer()

7th March 2003, Simon Goodall
 * RC file is now built as part of autoconf
 * Merged some minors diffs between some sear versions

6th March 2003, Simon Goodall
 * added file defining basic geometric types (vertex, normal, texel etc)
 * added enable-mmgr flag to configure

6th March 2003, Simon Goodall
 * Fixed terrain bug caused by array out of bounds. (might have broken something else though who thought comments were a bad idea?)
 * Fixed bug on cally re-write where first material was not loaded properly

6th March 2003, Simon Goodall
 * Updated cal3d loader to take height and default material set def

5th March 2003, Simon Goodall
 * Re-write of cal3d loader code. uses varconf format file for configuration and will allow material properties to be over-ridden
 * Fixed changelog dates - mix up in years and dates (oops)

4th March 2003, Simon Goodall
 * Changed terrain texture to use clamping to avoid problems on landscape boundaries
 * Removed landscape texture name output

15th February 2003, Simon Goodall
 * Terrain now uses a different texture map per heightmap
 * Terrain now uses multitexturing
 * glLockArarys used if available

31st January 2003, Al Riddoch
 * Add mechanism to detect correct version of varconf on systems with varconf
   for sigc++ 1.0 and 1.2 installed.

15th January 2003, Simon Goodall
 * Fixed segfault caused by an entity having no parents

14th January 2003, Simon Goodall
 * Fixed NULL pointer error in model loading code

11th January 2003, Simon Goodall
 * Added display lists to Render object. Paintbox and 3DS models are now rendered by display lists

24th December 2002, Simon Goodall
 * Queues are now built on actual state object, not state name.

24th December 2002, Simon Goodall
 * Removed remainder of time code from System object

24th December 2002, Simon Goodall
 * Converted render to use new light object
 * Moved time area functionality to Calendar

24th December 2002, Simon Goodall
 * Intoduction of a light management class

24th December 2002, Simon Goodall
 * Added console commands to set time and date

24th December 2002, Simon Goodall
 * Calender now has console command, "get_time" which displays current time and date in console
 * Added day and month names to config file

24th December 2002, Simon Goodall
 * Added basic Calender Object. Will replace System calender functions.
 * Minor changes to VarconfRecord. Now created with new instead of malloc

22nd December 2002, Simon Goodall
 * fixes for ISO c++

22nd December 2002, Simon Goodall
 * configure.in changes to remove warnings on newer autoconf versions
 * acconfig.h no longer required

22nd December 2002, Simon Goodall
 * Guard against possible seg fault if we request a colour id greater than allowed

21st December 2002, Simon Goodall
 * Precompute all selection colours so we can put array straight into renderer
 * Entities now directly stored in array for selection

20th December 2002, Simon Goodall
 * Removed unrequired code that slowed down selection process. We were storing a sequence of numbers in an std::set, this has been replaced by a single int.

18th December 2002, Simon Goodall
 * Updated required Eris version

14th December 2002, Simon Goodall
 * Removed icon transparency error message (no longer required)
 * Converted internal height map format from unsigned char to float

12th December 2002, Simon Goodall
 * Fixed Icon transparency under Win32

12th December 2002, Simon Goodall
 * Added icon file and resource script for win32 executable
 * Updated make_win32 script to build in app icon

11th December 2002, Simon Goodall
 * Cal3d options now allow specifying a particular material set on a per entity type basis

11th December 2002, Simon Goodall
 * Scripting engine now works with dos file formats
 * '#' is now the comment character until end of line 

11th December 2002, Simon Goodall
 * Converted scripting engine to use ifstream instead of FILE.

10th December 2002, Simon Goodall
 * Changed GL_CLAMP to GL_CLAMP_TO_EDGE to fix texture seams in skybox

10th December 2002, Simon Goodall
 * Applied patch by Al Riddoch to work with Eris 0.9.7
 * Changed abs to fabs in Cal3d_Loader for gcc 3.2 compat

10th December 2002, Simon Goodall
 * Bumped version number due to release

10th December 2002, Simon Goodall
 * Fixed bug in cally loader where every model was scaled by teh same height regardless of individual settings

10th December 2002, Simon Goodall
 * Fixed bug where front and back face polygon culling would sometimes cull the wrong side

7th December 2002, Simon Goodall
 * Fixed bug in Cally loader where it would segfault if it couldn't find a non-RAW texture
 * Landscape segments now have visibility test in addition to patch visiblity tests
 * Fixed landscape clipping from overclipping
 * Quick fix to in cal3d to allow alpha and lighting to be visible. setting diffuse[3] = 1.0f, otherwise model would be invisible

7th December 2002, Al Riddoch
 * common/mmgr.cpp: std:: namespace fixes.
 * Clean up compiler flag handling in configure.in

6th December 2002, Simon Goodall
 * file cleanups
 * Bumped version numbers

6th December 2002, Simon Goodall
 * Fixes hole where terrain joined
 * Fixes some config problems with terrain
 * Fixed segfault caused during terrain initialisation by using arrays before being created

3rd December 2002, Simon Goodall
 * Fixed terrain getHeight code
 * Fixed terrain so water level now scales with terrain scale
 * Reduced terrain popping effect by limiting amount of change per frame

29th November 2002, Simon Goodall
 * Fixed bug in config files where the path name was prefixed to a numeric value, fixed by adding another general config file

29th November 2002, Simon Goodall
 * Fixed an out by one error on the getHeight code in terrain
 * Fixd code terrain code so it will go to much greater detail than before

27th November 2002, Simon Goodall
 * Fixed some mad code which had limit checks set for the wrong end of increment and decrement functions

27th November 2002, Simon Goodall
 * ROAM engine can now handle multiple height maps
 * Fixed bug in sky box where one texture would not be displayed

13th November 2002, Simon Goodall
 * Camera position now saved according to user defined boolean option. "save_camera_position". default is false

12th November 2002, Simon Goodall
 * Fixed up model_viewer so it now compiles again. still a few got problems.
 * System's varconf config objects now actual objects and not pointers
 * All objects that read config data from general, now update variables when general updates.

30th October 2002, Simon Goodall
 * Removed obsolete model unloading code
 * Camera code now only performs update calculations if required 
 * Camera code now calculates its position vector from focus

30th October 2002, Simon Goodall
 * Removed last update due to problems

29th October 2002, Simon Goodall
 * Sear now uses XPM loader from SDL_image, instead of own version.

21st October 2002, Simon Goodall
 * Fixed clean up code for Cal3D models and  modelhandler so they remove all instances they create

20th October 2002, Simon Goodall
 * Converted many string values to static decl's
 * Moved most Log::writeLog calls to debug mode only
 * Added clean up code to 3ds loader code

20th October 2002, Simon Goodall
 * Filled in missing initialisers in System
 * Introduced optional dependancy on GLGooey. This will be the base for future GUI work. enable with configure option, --with-glgooey=yes
 * Added a gui under the server screen. "/switch_mode server". Lists metaserver work too.
 * Fixed a couple of memory leaks
 * Converted ActionLoader to use varconf to read files
 * Converted StateProperties to use varconf to read files
 * Added built-in font state to stateloader so we can see font regardless of what have been loaded in. This may still be overwritten externally.

09th October 2002, Al Riddoch
 * std:: namespace fixes. 

27th September 2002, Simon Goodall 
 * Re-implemented above character speech
 * Changed render queue passing to by-reference instead ob by val
 * Started code for a gui
 * Added multiple screens to Sear for gui stuff. Once you have taken or created a character, you need to type "/switch_mode world" to see the game world.

26th September 2002, Simon Goodall 
 * Fixed bug with NPlane loader where back faces got confused
 * Removed billboard and impostor loaders. NPlane loader provides there functionality.
 * Fixed bug where dropping an entity (and probably giving too) caused sear to hang
 * Fixed bug where stringstream work around was never implemented

26th September 2002, Simon Goodall 
 * Fixes to outline code which was using wrong values for states
 * Removed some now unused members from Model class

26th September 2002, Simon Goodall 
 * Re-implemented model unloading
 * Fixed bug where model was selected upon available record, but texture was selected upon its original type.

26th September 2002, Simon Goodall 
 * Camera height is now based upon character height

26th September 2002, Simon Goodall 
 * Re-implemented frustum culling

26th September 2002, Simon Goodall 
 * Changed Model/Object properties loading mechanism. New version allows more than one model per entity, allows different quality/detail level of models and provides a much more flexible interface for arbitrary model loaders. This causes the existing model configuration files to be obsolete. Still lots of work to do to bring back to required functionality.

21st September 2002, Simon Goodall
 * Changed billboard/imposter/nplane to have two polygons, instead of one. Allows backface culling and removes two-sided lighting
 * Added a spec file for the media.

11th September 2002, Simon Goodall
 * Cally models now scale to height of bounding box. Requires cally config file to have the scale option set to unit height

9th September 2002, Simon Goodall
 * Fixed states file so Slice models now blend with lighting enabled.
 * Added check so if sound doesn't initialise, Sear still runs

8th September 2002, Simon Goodall
 * New console command; cd_this_dir - when run in a script, will change the current dir to the directory the script is located
 * Fixed bug where default textures were not properly set up. caused by not including the section name when they were stored

8th September 2002, Simon Goodall
 * Fixed bug in model loaders where the model was still used even if it failed its init call

8th September 2002, Simon Goodall
 * Finally removed cal3d usage of opengl. Textures are now handled like every other texture in Sear

8th September 2002, Simon Goodall
 * Removed optionability of lib3ds and cal3d due to  incompatibility problems of the method used

8th September 2002, Simon Goodall
 * Updated depend on varconf 0.5.4 release instead of CVS

8th September 2002, Simon Goodall
 * Minor optimisation - converted for loop variables from postfix to prefix ++

8th September 2002, Simon Goodall
 * Removed uneccessary code from Utility class
 * Added test to configure to detect buggy stringstream and apply workaround

7th September 2002, Simon Goodall
 * Added initialation check to all objects with init/shutdown methods
 * added cvs tag Id: to all source files

7th September 2002, Simon Goodall
 * Added intialisation check to all loader objects

7th September 2002, Simon Goodall
 * Added support for the  GL extension: EXT_texture_filter_anisotropic
 * Added support for the  GL extension: SGIS_generate_mipmap
 * Added check to Cal3d destructor to make sure shutdown gets called before deletion

7th September 2002, Simon Goodall
 * Changed order of configure library detection to follow dependancies

6th September 2002, Simon Goodall
 * Changed model animations to be based upon mode and action fields in an entity instead of its velocity
 * Fixed bug in Cally code where animations were only asigned to the first model instance of a core type

6th September 2002, Simon Goodall
 * Added options to Slice loader for number of slices per slicing and number of slicings in the model
 * Commented out the printing of redundant SDL info that caused problems on some older compilers.

5th September 2002, Simon Goodall
 * Fixed problems in Object/Stae/Action Loader code which caused an error message to be printed when the end of file was reached. Also now allows use of the # character in the first position in a line to denote a comment.
 * Minor changes to Slice code

3rd September 2002, Simon Goodall
 * Added first version of a slice loader. This will hopefully allow for trees as in A Tale in the Desert. Currently will load and blend in the foilage area. Trunk model not yet implemented.

3rd September 2002, Simon Goodall
 * Added new class called FileHandler. Currently this allows you to add or remove search paths. It also allows searching for the first or every occurance of teh file name in the search paths. The main aim is to search for the startup and shutdown scripts. An extra command line argument has been providied to allow extra search paths for the startup scripts.

2nd September 2002, Simon Goodall
 * Fixed bug in rendering code when using mipmaps with alpha blending caused corrupted graphics to be displayed. Caused by not checking whether image was RGB or RGBA

1st September 2002, Simon Goodall
 * Updated stateloader to use the default state before emitting an error message
 * Updated 3DS code to load a wider range of models.
 * Updated 3DS code to load in textures assigned in the second texture, bump and reflection slot as well as the initial texture slot. The texture used will be the first one found.

31th August 2002, Simon Goodall
 * Fixed bug where "Cannot SAY..." was displayed even if connected to game world

31th August 2002, Simon Goodall
 * Cal3d and Lib3ds are now optional, but recommended

31th August 2002, Simon Goodall
 * Cal3d loader now supports adding and removing meshes. Model viewer option added to test this

31th August 2002, Simon Goodall
 * Added support for multiple texture sets in cal3d loader.
 * Added extra options to model viewer.
 * Added a light source to modelviewer.

31th August 2002, Simon Goodall
 * Fixed bug with cally models where models appeared white instead of their material colours. Caused by scaling the cally model which upsets the normals. Added option to state manager to enable GL_RESCALE_NORMAL to fix this
 * Fixed bug in ROAM code where the height map was free'd twice
 * Cally config files now need to specify what type of animation the animation file is. e.g. animation_walk=walk_animation.caf

30th August 2002, Simon Goodall
 * Code changes for new Metaserver design

27th August 2002, Simon Goodall
 * Added message "Cannot SAY, not in game yet" when entering a non-command string into console before entering game world

27th August 2002, Simon Goodall
 * Some GCC 3.2 fixes
 * Cal3D loader now uses a single CalCoreModel per model type instead of one per model.

23rd August 2002, Simon Goodall
 * Added additional command to modelviewer. pressing "g" will now toggle the visibility of the axis

23rd August 2002, Simon Goodall
 * Billboards, Impostors and NPlanes now "clamp" textures to avoid visual defects

23rd August 2002, Simon Goodall
 * Added metaserver support. Currently displays active servers in stdout. use the command "/get_servers"
 * Modified Impostor code so to optionally use two textures instead of one.

21st August 2002, Simon Goodall
 * Added base code for using the Eris::Lobby chat interface

21st August 2002, Simon Goodall
 * Sound now uses Log class instead of cerr or printf
 * Character actionhandler events are now type based

21st August 2002, Simon Goodall
 * Fixed bug where two_sided_lighting was never enabled even if requested
 * Defined default material properties for most objects instead of using whatever the last set properties were

21st August 2002, Simon Goodall
 * Added support to loop sound files
 * Added ActionHandler events for walking running, and stopped
 * Stationary cally models now in idle pose

21st August 2002, Simon Goodall
 * ActionHandler events now fire for dawn, dusk day and night

21st August 2002, Simon Goodall
 * Fixed bug found and solved by damien when displaying speech caused a segfault on some systems.

20th August 2002, Simon Goodall
 * ActionHandler will now emit an even when the character enters another container of the name: "entering_" + entity_type

20th August 2002, Simon Goodall
 * Added an actionhandler class. Aim is to notify the class of an event such as system start, or character walking and run an associated script file. Main use is to link in sound effects or even animations.
 New console commands
 "/load_action_config filename" loads the action config file
 "/do_action action" perform an action

20th August 2002, Simon Goodall
 * Added option to play and stop music. "/play_music file" plays the track. "/stop_music" stops the music

20th August 2002, Simon Goodall
 * Improved sound by changing from SDL-sound to SDL_mixer. This allows multiple sounds to be played at once

20th August 2002, Simon Goodall
 * Added sound support to Sear through SDL_sound library. use the console command "/play_sound sound_file" to play a sound. currently will only play one sound file at a time.

20th August 2002, Simon Goodall
 * Updated comments for console code

20th August 2002, Simon Goodall
 * Added two new console commands: get_time and set_time. get_time prints the current time on the console. set_time allows you to set the current time.

19th August 2002, Simon Goodall
 * Modified console so all commands now start with a '/' excluding those already beginning with a '+' or '-'. All other entries will be classified as speech.

19th August 2002, Simon Goodall
 * Fixed SEGFAULT caused by object having no parent type specified in model loaders

19th August 2002, Simon Goodall
 * Added +/- keys to allows vertical repositioning of model in model viewer

19th August 2002, Simon Goodall
 * Improved camera control. Now same as in Sear

19th August 2002, Simon Goodall
 * Model Viewer now updates in real-time instead of a fixed value
 * Better mouse interface for model viewer

19th August 2002, Simon Goodall
 * Fixed error message "Not connected" when trying to login when already logged in
 * Model viewer now allows actions to be performed. Use number keys 1 through 4.  1 - Walk
  2 - Run
  3 - Some Model defined action - normally wave
  4 - Some Model defined action

18th August 2002, Simon Goodall
 * Model viewer now uses SDL instead of GLUT

18th August 2002, Simon Goodall
 * Changes to states file which fixes some lighting problems when using mouse_move_select

18th August 2002, Simon Goodall
 * Possible fix to Win32 Fullscreen bug
 * Minor changes so code uses pointers passed to them in the constructor instead of getting it from elsewhere everytime it is required.

18th AUGUST 2002, Al Riddoch
 * Added configure check, and fixes so that the code builds with sigc++ 1.2

17th August 2002, Simon Goodall
 * Intorduced ModelStruct to encapsulate all data required to produce a model.
 * Some more internal changes made to get the model_viewer code working in tools dir

### SEAR 0.4.1 RELEASED ###

14th August 2002, Simon Goodall
 * Updates for cross-compiling

13th August 2002, Simon Goodall
 * Fixed potential seg faults on 3ds loader
  - Fault 1 caused by no material name
  - fault 2 caused by multipling a value instead of adding to it

### SEAR 0.4.0 RELEASED ### 

12th August 2002, Simon Goodall
 * Fixed bug where  height map location was blanked unless explicitly added to home dir general.
 * Fixed bug where camera position was stored in config files
 * Updated configure.in to produce better debug infomation
 * Added callback to varconf error signal in System

7th August 2002, Simon Goodall
 * Updated makefile.am's to be able to create a distribution
 * Updated configure.in to point the user to web locations for missing libraries
 * Included replacement files for media pack

6th August 2002, Simon Goodall
 * Fixed seg fault caused by specifying 0x0 window size
 * Converted Sear to use varconf instead of own Config system. This has caused the format of the configuration file (excluding object and state loader files) to have changed to accomodate the varconf format. Additionally the definition of keys has changed to work with varconf. See src/Bindings.cpp for the new values.

5th August 2002, Simon Goodall
 * scale property added to objectloader. Currently only used by 3ds loader
 * offset property added to objectloader. Currently only used by 3ds loader
 * Enabled 3ds material properties

4th August 2002, Simon Goodall
 * Further improvements on 3ds support. Now uses vertex arrays to improve performance and fixed a bug where the texture was loaded many times per object per frame which had a huge performance hit.

3rd August 2002, Simon Goodall
 * Improved 3ds support and allow use of textures

2nd August 2002, Simon Goodall
 * Added an NPlane model type. like billboard and impsoter, but makes model from N planes. Only works for odd values of N such as 3 or 5

2nd August 2002, Simon Goodall
 * Added two-sided-lighting option to state loader
 * Fixed state change bug where current state was never set
 * Fixed model by type bug where only one model of a type was actually rendered
 * Re-implemented detail level control
 * Fixed outlining bug where using alternate method caused problems for cal3d and bound/boxes

1st August 2002, Simon Goodall
 * Updated Factory.h and WorldEntity class to accomodate changes to Eris
 * Graphics class introduced which performs the generic rendering functions, while Render now only does the specific ones
 * Fixed bug where default font would not be used even if no font was specified
 * Converted terrain engine to use a vertex arrays instead of drawing each triangle one by one
 * Terrain engine no longer uses OpenGL directly

24th July 2002, Simon Goodall
 * Re-implemented floating character speech
 * Fixed selection bug caused by using a texture when they should have been disabled

22nd July 2002, Simon Goodall
 * Some fixes for cross-compiling

22nd July 2002, Al Riddoch
 * src/Utility.cpp: ISO C++ fixes.

22nd July 2002, Simon Goodall
 * Fixed bug where state changes were created in a display list, but the display list was not actually used!

22nd July 2002, Simon Goodall
 * Default texture and font now really xpm files as exported from gimp

22nd July 2002, Simon Goodall
 * Added a built-in texture that will be used should the requested one be invalid
 * Added a built-in font texture that will be used should the requested one be invalid

22nd July 2002, Simon Goodall
 * Placed exception handling in client console commands.
 * Console command errors will print error messages to console instead of just to log
 * Fixed Config bug where random data was written to files. Caused by using unitialised arrays

20th July 2002, Simon Goodall
 * Added a command history
 * Sky and Terrain code moved to sepatate dirs/libs
 * Remove SkyBox reliance on OpenGL

19th July 2002, Simon Goodall
 * Fixed console bug where only first argument was processed.
 * Removed extra refrences to the GL render code
 * Added camera commands

19th July 2002, Simon Goodall
 * Console commands fully migrated.
 * Tokeniser code now in own class,
 * Fixed segfalut caused by not providing the exact number of arguments to a console command

10th July 2002, Simon Goodall
 * Console command registering implemented. Need to migrate existing system to new

10th July 2002, Simon Goodall
 * Re-implemented Frustum culling
 * Stateloader file now loaded via console command instead of hardcoded location
 * Fixed console text bugs caused by wrong state in use
 * Re-implemented model running / walking and added it to other models too. anything with a vel above root 7 will be running
 * Re-implemented object outlining

10th July, Simon Goodall
 * Moved state code to separate class and read settings from a file instead of hardcoding them.

8th July 2002, Simon Goodall
 * Basis for Sear Model Viewer
 * OpenGL renderer code moved to separate dir than main source
 * Minor fixes to model loaders
 * Directory cleanups

5th July 2002, Simon Goodall
 * Improved 3ds model loader - now adds in normal and texture data if possible. (CURRENTLY NOT IN NEW MODEL INTERFACE)
 * Improved comments in some header files
 * Introduced New model loading interface. Specific model type are in sear/loaders. Main code only knows about Models and ModelLoader interfaces. As such models currently do not load as required.

3rd July 2002, Simon Goodall
 * Removed some redundant rendering code
 * Added base for 3ds model loader - currently only loads mesh

2nd July 2002, Al Riddoch
 * ISO C++ compliance fixes.

1st July 2002, Simon Goodall
 * Log applied to Bindings, Camera, Character, Config, Console, Event, GL_Render, Model, Object Loader, SkyBox, System, Terrain and WorldEntity classes.
 * debug.h removed as will be encapsulated in Log class
 * System re-order fixed.
 * Now use WFMath's Pi instead of system defined
 * Moved degree to radian macro to template code in utilit class
 * Moved SQR code to utility class
 * Allow character strafing

30th June 2002, Simon Goodall
 * Implemented basic Exceptions to eventually replace all error checking
 * Added Sear Namespace
 * Added support for Cal3D models to use different texture file types using SDL_image - THIS NEEDS TESTING

28th June 2002, Simon Goodall
 * Implemented basic Log object to eventually replace all cout / cerr / DEBUG msgs

18th June 2002, Simon Goodall
 * Replaced unique colour counter code with a much faster implementation. The new implementation obtains the first 500 unique colours which should be greater than the possible amount of objects to be rendered.
 * Fixed water feature
 * Fixed a bug that stopped Sear working with Stage
 * Added a change directory function to scripting engine
 * Added ability to prefix current directory to entiries on loading into config data
 * Media now moved into separate "Media Package"
 * Probably more, but its been awhile

22nd May 2002, Simon Goodall
 * Fixed SEG fault caused by re-reading config before a character object was created
 * Further updates for gcc 3 compilation
 * Fixed problems in lighting caused by enabling two-sided lighting.
 * Replaced colour splash with a "loading please wait message"
 * Fixed potential mempry leak caused by toggling fullscreen in Win32
 * System now deletes models that have not be unsed for over 1 min
 * User def far_clip
 * User def terrain_scale
 * Fixed terrain loading bug

16th May 2002, Simon Goodall
 * Applied patch by Alriddoch to compile under gcc 3.01. This also reduced the far clipping plane from 1000 to the more reasonable value of 100
 * Enabled two sided lighting to fix lighting problems with billboards and Impostors
 * Fog now changes colour depending upon light level
 * toggle_console now works with keys defined by braces, e.g. {F10}
 * Allows different resolutions
 * --enable-debug=no now turns off debug information from eris
 * Names now appear over currently selected object
 * Camera now has range limiting
 * console command read_config will tell system to re-read the config values in the general config loader

14th May 2002, Simon Goodall
 * Fixed bug where time cycle sped up
 * Stencil highlights now optional
 * WireFrame now uses vertex arrays

13th May 2002, Simon Goodall
 * Fixed wire frame functionality. It was potentially using uninitialised bboxes
 * Added frustum culling using sphere tests.
 * Improved lighting system. Sun now moves and has user definable dawn/dusk times
 * Added option in configure to enable debug information. Debug information is a possible cause of Sear hanging upon exit on some systems.
 * Added use of video mode querying to provide additional startup information
 * Moved lots of rendered code into vertex arrays to improve speed.
 * Removed lots of redundant rendering code from GL_Render.cpp

10th May 2002, Simon Goodall
 * Fixed bug caused by setting install directory too late

10th May 2002, Simon Goodall
 * Added version string to command line arguments. use -v or --version
 * Added help message to command line args. use -h or --help
 * Use of sstream and strstream to perform type conversions
 * Allows connection to a server on any port
 * Allow creation of characters of different type` and sex
 * Lots more messages on standard out
 * Fixed bug that used the same cally model for a given type.
 * Fixed bug where camera was not properly fixed to the vertical position of the character
 * Added wire_frame queue
 * System will downgrade none-existent model types until wire-frame is reached
 * Minimised Open GL state changes
 * Replaced OpenGL selection by a colour selection method. Improves accuracy and works with blending
 * Added halo effect to selected entities
 * Added different cursors depending upon current action
 * Changed pickup and touch to effect the next entity selected and not the current one

1st May 2002, Simon Goodall
 * Entities are now drawn according to object properties
 * New Object Properties; draw_self and draw_members; determine what gets drawn
 * Object properties file contains entries for most structures so as to hide bbox lines
 * toggle_console can now really be bound to any key instead of just back quote
 * Changed configure.in to fix INSTALLDIR being set to NONE in some cases
 * Added support for billboard / impostor styles of rendering
 * Fixed problems as seen in the sky box where seams were visible. GL_CLAMP wasn't being set properly.
 * Lots of internal changes. Hopefully much more stable now.
 * System loads a float terrain if height map not found.

27th April 2002, Simon Goodall
 * Fixed possible seg faults caused by attempting to control character before having one
 * Applied patch file by man-di fixing problems caused by previous definitions of M_PI

25th April 2002, Simon Goodall
 * Model height is now more in line with landscape height
 * Tidied up code
 * Fix seg fault that occurred if cyclient was run
 * Changed way normals are calculated on terrain.

Initial Change Log, Simon Goodall