Compiling Celsetia in Visual Studio(free)2008

The place to discuss creating, porting and modifying Celestia's source code.
Avatar
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Re: Compiling Celsetia in Visual Studio(free)2008

Post #21by cartrite » 27.10.2008, 10:13

The reason why I didn't download the 2003 SDK was because as I was installing the Visual Studio Express 2008,I thought it had downloaded it's own SDK.
It does have a SDK folder but it's not complete. That is why the Microsoft Software Development Kit is also needed. I was trying to show this in the images I posted. You should have noticed that I put in the links to the separate Microsoft SDK that I installed above the statements that were configured in VC++2008 Express. When you replied that your setup looked the same as mine, I was surprised that you said that you just downloaded the SDK. It made me wonder.
cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

ajtribick
Developer
Posts: 1855
Joined: 11.08.2003
With us: 21 years 3 months

Re: Compiling Celsetia in Visual Studio(free)2008

Post #22by ajtribick » 27.10.2008, 10:33

NIGHTCAST2000 wrote:Hi Cartrite,
Thank you very much and Ajtribick for your help.I did find the executable in the debug folder,I simply moved the file into the main celestia directory for it to fire up.
The reason why I didn't download the 2003 SDK was because as I was installing the Visual Studio Express 2008,I thought it had downloaded it's own SDK.

Regards,
NIGHTCAST2000
Step 11 in the Wiki list of things to do would have caused it to output in the proper place...
In the same dialogue box, change Configuration Properties>General>Output Directory to "$(SolutionDir)" (without quotes).

Note you should have set the build type to release before messing with the configuration properties (steps 10 and 11), because otherwise you would have ended up setting the properties for the debug build only. (This is why the instructions are in numbered order...)

Topic author
NIGHTCAST2000
Posts: 146
Joined: 09.10.2006
With us: 18 years 1 month

Re: Compiling Celsetia in Visual Studio(free)2008

Post #23by NIGHTCAST2000 » 27.11.2008, 22:48

Hi everyone,
I have been compiling the SVN version of Celestia for a few times now,and I have noticed after launching the executable,celestia 1.6 loads a lot slower than 1.5 did when I used to compile that CVS version.I'm using the latest nvidia 178.24 drivers from their website and the latest version of Directx.
Also,when celestia gets to earth,there is a bright spot as shown in this image:
Celestia 1.6 Screenshot.jpeg


And here is my OpenGL info:

Code: Select all

Vendor: NVIDIA CorporationRenderer: GeForce 6800 GT/PCI/SSE/3DNOW!Version: 2.1.2GLSL version: 1.20 NVIDIA via Cg compilerMax simultaneous textures: 4Max texture size: 4096Max cube map size: 4096Point size range: 1.000000 - 63.375000Supported Extensions:GL_ARB_color_buffer_floatGL_ARB_depth_textureGL_ARB_draw_buffersGL_ARB_fragment_programGL_ARB_fragment_program_shadowGL_ARB_fragment_shaderGL_ARB_half_float_pixelGL_ARB_imagingGL_ARB_multisampleGL_ARB_multitextureGL_ARB_occlusion_queryGL_ARB_pixel_buffer_objectGL_ARB_point_parametersGL_ARB_point_spriteGL_ARB_shadowGL_ARB_shader_objectsGL_ARB_shading_language_100GL_ARB_texture_border_clampGL_ARB_texture_compressionGL_ARB_texture_cube_mapGL_ARB_texture_env_addGL_ARB_texture_env_combineGL_ARB_texture_env_dot3GL_ARB_texture_floatGL_ARB_texture_mirrored_repeatGL_ARB_texture_non_power_of_twoGL_ARB_texture_rectangleGL_ARB_transpose_matrixGL_ARB_vertex_buffer_objectGL_ARB_vertex_programGL_ARB_vertex_shaderGL_ARB_window_posGL_ATI_draw_buffersGL_ATI_texture_floatGL_ATI_texture_mirror_onceGL_S3_s3tcGL_EXT_texture_env_addGL_EXT_abgrGL_EXT_bgraGL_EXT_blend_colorGL_EXT_blend_equation_separateGL_EXT_blend_func_separateGL_EXT_blend_minmaxGL_EXT_blend_subtractGL_EXT_compiled_vertex_arrayGL_EXT_Cg_shaderGL_EXT_depth_bounds_testGL_EXT_draw_range_elementsGL_EXT_fog_coordGL_EXT_framebuffer_blitGL_EXT_framebuffer_multisampleGL_EXT_framebuffer_objectGL_EXT_gpu_program_parametersGL_EXT_multi_draw_arraysGL_EXT_packed_depth_stencilGL_EXT_packed_pixelsGL_EXT_pixel_buffer_objectGL_EXT_point_parametersGL_EXT_rescale_normalGL_EXT_secondary_colorGL_EXT_separate_specular_colorGL_EXT_shadow_funcsGL_EXT_stencil_two_sideGL_EXT_stencil_wrapGL_EXT_texture3DGL_EXT_texture_compression_s3tcGL_EXT_texture_cube_mapGL_EXT_texture_edge_clampGL_EXT_texture_env_combineGL_EXT_texture_env_dot3GL_EXT_texture_filter_anisotropicGL_EXT_texture_lodGL_EXT_texture_lod_biasGL_EXT_texture_mirror_clampGL_EXT_texture_objectGL_EXT_texture_sRGBGL_EXT_timer_queryGL_EXT_vertex_arrayGL_IBM_rasterpos_clipGL_IBM_texture_mirrored_repeatGL_KTX_buffer_regionGL_NV_blend_squareGL_NV_copy_depth_to_colorGL_NV_depth_clampGL_NV_fenceGL_NV_float_bufferGL_NV_fog_distanceGL_NV_fragment_programGL_NV_fragment_program_optionGL_NV_fragment_program2GL_NV_framebuffer_multisample_coverageGL_NV_half_floatGL_NV_light_max_exponentGL_NV_multisample_filter_hintGL_NV_occlusion_queryGL_NV_packed_depth_stencilGL_NV_pixel_data_rangeGL_NV_point_spriteGL_NV_primitive_restartGL_NV_register_combinersGL_NV_register_combiners2GL_NV_texgen_reflectionGL_NV_texture_compression_vtcGL_NV_texture_env_combine4GL_NV_texture_expand_normalGL_NV_texture_rectangleGL_NV_texture_shaderGL_NV_texture_shader2GL_NV_texture_shader3GL_NV_vertex_array_rangeGL_NV_vertex_array_range2GL_NV_vertex_programGL_NV_vertex_program1_1GL_NV_vertex_program2GL_NV_vertex_program2_optionGL_NV_vertex_program3GL_NVX_conditional_renderGL_SGIS_generate_mipmapGL_SGIS_texture_lodGL_SGIX_depth_textureGL_SGIX_shadowGL_SUN_slice_accumGL_WIN_swap_hintWGL_EXT_swap_control


I hope somebody can help me with this one.

Regards,
NIGHTCAST2000
Motherboard:Asus Sabretooth 990FX
Processor: AMD Athlon II X3 46
Memory: 4 Gb DDR3 SDRAM
Graphics Card: Nvidia 560 GTX 1Gb
SoundCard: Asus onboard
Hardrive:Seagate Barracuda 1TB GB 7200rpm SATA 23Mb Cache

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Re: Compiling Celsetia in Visual Studio(free)2008

Post #24by selden » 28.11.2008, 15:38

NIGHTCAST2000 wrote:Hi everyone,
I have been compiling the SVN version of Celestia for a few times now,and I have noticed after launching the executable,celestia 1.6 loads a lot slower than 1.5 did when I used to compile that CVS version.I'm using the latest nvidia 178.24 drivers from their website and the latest version of Directx.
DirectX is irrelevant. Celestia uses OpenGL.
Whenever you install an updated DirectX from Microsoft, you have to reinstall Nvidia's drivers afterward.
Microsoft always replaces OpenGL routines with their own non-functioning versions.

As best I can tell, Celestia v1.6 is slower to load because of the large catalog of galaxies which is included. The splash screen shows the names of the files as they are being loaded. It'd be nice if binary catalogs for DSC objects could be implemented, but that hasn't happened yet.

Also,when celestia gets to earth,there is a bright spot as shown in this image:

Which render path are you using?
Are you using the default textures?
The paleness of the oceans is suspicious.

[edit]What's the ambient light level set to? For accurate rendering, it should be off. [/edit]

I see this on my home system using the OpenGL 2.0 render path:
earth_specular.jpg


System configuration:

1GB, 3.4GHz P4-550, WinXP Pro SP3
256MB GF 7800 GTX, ForceWare v175.16
Celestia r4550 from SVN
Selden

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 7 months
Location: Hamburg, Germany

Re: Compiling Celsetia in Visual Studio(free)2008

Post #25by t00fri » 28.11.2008, 17:04

Selden,

Selden wrote:As best I can tell, Celestia v1.6 is slower to load because of the large catalog of galaxies which is included. The splash screen shows the names of the files as they are being loaded. It'd be nice if binary catalogs for DSC objects could be implemented, but that hasn't happened yet.

This argument of yours I don't understand. The number of galaxies in my catalog has only increased by a few percent since Celestia 1.4.0!

This very slight increase happened before 1.6.0.
The number of globulars that are new is "peanuts": 150 only!

So how should I understand your remark?

Fridger
Image

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Re: Compiling Celsetia in Visual Studio(free)2008

Post #26by selden » 28.11.2008, 17:54

Fridger,

Because I was mis-remembering when galaxies were added.
Loading large textual catalog files is a major slowdown in Celestia's startup, though. I think that having an ASCII-to-binary translator for all three (STC, SSC and DSC) catalog formats would make a big difference.

Nightcast,

Watch the names of the files being loaded.
They're shown at the lower right of the "splash image" of both versions of Celestia.
Which ones seem to be taking longer?

One possibility is that your disk has become extremely fragmented.
When's the last time you ran the defragmenter?
Selden

Topic author
NIGHTCAST2000
Posts: 146
Joined: 09.10.2006
With us: 18 years 1 month

Re: Compiling Celsetia in Visual Studio(free)2008

Post #27by NIGHTCAST2000 » 28.11.2008, 19:20

Hi Selden,
Sorry for the late response.I re-installed my nvidia drivers last night and I de-fragmented my hardrive sometime last week.
Strangely,I don't get the splash image,celestia waits for a few seconds,and starts with the sun and goes straight to Earth.
I turned off show galaxy in the render section and celestia runs much faster!I'm currently using the default textures from the SVN repository.I haven't used any addons yet.
Cycling through the ctrl+v combination gave some interesting results:I'll put some more sreenshots in another reply post.

Regards,
NIGHTCAST2000
Motherboard:Asus Sabretooth 990FX
Processor: AMD Athlon II X3 46
Memory: 4 Gb DDR3 SDRAM
Graphics Card: Nvidia 560 GTX 1Gb
SoundCard: Asus onboard
Hardrive:Seagate Barracuda 1TB GB 7200rpm SATA 23Mb Cache

Topic author
NIGHTCAST2000
Posts: 146
Joined: 09.10.2006
With us: 18 years 1 month

Re: Compiling Celsetia in Visual Studio(free)2008

Post #28by NIGHTCAST2000 » 28.11.2008, 19:29

Here are some more screenshots:

With the last one of Saturn,I cycled through the render paths and it made no difference.

Regards,
NIGHTCAST2000
Motherboard:Asus Sabretooth 990FX
Processor: AMD Athlon II X3 46
Memory: 4 Gb DDR3 SDRAM
Graphics Card: Nvidia 560 GTX 1Gb
SoundCard: Asus onboard
Hardrive:Seagate Barracuda 1TB GB 7200rpm SATA 23Mb Cache

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Re: Compiling Celsetia in Visual Studio(free)2008

Post #29by selden » 28.11.2008, 20:25

I assume you've verified that the standard v1.5.1 distribution is working OK.

The symptoms are consistent with not finding or not not being able to load some of the surface texture image files.

Have you looked at the contents of Celestia's on-screen console log?
Type a tilde (~) to toggle it, arrow keys to navigate up and down in it.
It might show some appropriate error messages.

I managed to duplicate your picture of the Earth by renaming earth.png to be not_earth.png.
It's almost as if you've linked Celestia with a damaged png image library, which might explain no splash screen, except then I wouldn't expect to be able to see nightlights, either.
[edit] except that the nightlight textures included with Celestia are jpeg images, so non-functional png loading seems to be the problem.[/edit]

What png library are you using?
Selden

Topic author
NIGHTCAST2000
Posts: 146
Joined: 09.10.2006
With us: 18 years 1 month

Re: Compiling Celsetia in Visual Studio(free)2008

Post #30by NIGHTCAST2000 » 28.11.2008, 21:38

Hi Selden,
I've ran celestia again and toggled with shift+~,it come up with a few errors.Is there a way to record the errors when celestia starts up?I have posted a screenshot here:
Celestia Earth Error.jpeg

Ihaven't ran the official version of Celestia for sometime now.
I have run TortoiseSVN to update to the latest version,and I have checked the paths using Cartrite's screenshots.I'm having a bit of trouble rebuilding celestia at the moment,it comes up with this error:

Code: Select all

------ Build started: Project: celestia, Configuration: Release Win32 ------
Compiling...
Project : error PRJ0003 : Error spawning 'cl.exe'.
Build Time 0:00
Build log was saved at "file://c:\CELESTIA\celestia\Release\BuildLog.htm"
celestia - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


I think I need a bit of help of where I'm going wrong on this one.
Regards,
NIGHTCAST2000
Motherboard:Asus Sabretooth 990FX
Processor: AMD Athlon II X3 46
Memory: 4 Gb DDR3 SDRAM
Graphics Card: Nvidia 560 GTX 1Gb
SoundCard: Asus onboard
Hardrive:Seagate Barracuda 1TB GB 7200rpm SATA 23Mb Cache

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Re: Compiling Celsetia in Visual Studio(free)2008

Post #31by selden » 28.11.2008, 22:32

The only way to record those particular error messages that I'm aware of is with a screengrab, as you've done.

The complaint about filetype ".*" is normal, unfortunately. That's the wildcard which causes Celestia to look for several different image filetypes (jpg, png, dds, ctx).

It's usually good to have a runnable copy of the official release, just so you can verify that the problems aren't in the computer rather than in Celestia. You can install it in a different directory and have multiple versions of Celestia on your computer.

I use a command line procedure to build Celestia, so someone else will have to help you with the problems as reported by the GUI. I just now built r4552 with no fatal errors. It runs fine, too.
Selden

Avatar
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Re: Compiling Celsetia in Visual Studio(free)2008

Post #32by cartrite » 29.11.2008, 06:21

I googled you error and came up with this.
http://social.msdn.microsoft.com/Forums ... fdbe30ba5/
http://discussion.forum.nokia.com/forum ... p?t=111150
I sound to me like you do not have the SDK paths before the VC++ paths in your environment settings.

cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Topic author
NIGHTCAST2000
Posts: 146
Joined: 09.10.2006
With us: 18 years 1 month

Re: Compiling Celsetia in Visual Studio(free)2008

Post #33by NIGHTCAST2000 » 01.12.2008, 11:54

Hi guys,
I managed to solve my cl.exe proplem,here's what I did.
After some more Google research,I fired up Microsoft Visual Express C++ 2008 and selected Tools>Options>VC++ Directories.
I then made sure executale files was selected in the top right-hand corner.I then clicked on the folder icon and navigated to this directory:

Code: Select all

C:\Program Files\Microsoft Visual Studio 9.0\VC\bin

I then selected the celestia project file,and it compiles nicely :)
I have a couple of issues thought after celestia compiles.
1)This warning comes up twice

Code: Select all

c:\celestia\celestia\inc\libjpeg\jmorecfg.h(215) : warning C4005: 'FAR' : macro redefinition
        C:\Program Files\Microsoft Platform SDK\Include\windef.h(145) : see previous definition of 'FAR'
I had set the compile in verbose mode here should be the full output if anybody is interested
http://www.badongo.com/file/12309050
2)I usually have to move the exexcutable file from the release folder after celestia compiles,is there a way to better link it?
3)When celestia runs,I still don't get the splash screen and the Earth and Saturn textures still seem to be corrupted,shall I get a fresh copy from the SVN repository?

Regards,
NIGHTCAST2000
Motherboard:Asus Sabretooth 990FX
Processor: AMD Athlon II X3 46
Memory: 4 Gb DDR3 SDRAM
Graphics Card: Nvidia 560 GTX 1Gb
SoundCard: Asus onboard
Hardrive:Seagate Barracuda 1TB GB 7200rpm SATA 23Mb Cache

Avatar
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Re: Compiling Celsetia in Visual Studio(free)2008

Post #34by cartrite » 01.12.2008, 16:18

1).I get the same 2 warnings.
2).I always copy the executable from the Release folder to the top directory. If you run it from there, you should see a splash screen at startup.
There would need to be an Install project to change this and there currently isn't one.
3).I have no idea why you don't have a splash screen at startup or why Saturn textures are corrupted.
Earth textures may look corrupted if you are using the wrong libpng.lib or libpng1.dll. That's all I can think of.

You say you added

Code: Select all

    C:\Program Files\Microsoft Visual Studio 9.0\VC\bin

That should be already covered by the line

Code: Select all

$(VCInstallDir)bin

Maybe you have something wrong here. Could you post a screen shot of the Tools>Options>VC++ Directories>executable files window?
cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Topic author
NIGHTCAST2000
Posts: 146
Joined: 09.10.2006
With us: 18 years 1 month

Re: Compiling Celsetia in Visual Studio(free)2008

Post #35by NIGHTCAST2000 » 01.12.2008, 17:38

Hi Cartrite,
Thanks for the reassuring advice.Here is the screenshot here:
Visual Express 2008 Screenshot.jpg

Regards,
NIGHTCAST2000
Motherboard:Asus Sabretooth 990FX
Processor: AMD Athlon II X3 46
Memory: 4 Gb DDR3 SDRAM
Graphics Card: Nvidia 560 GTX 1Gb
SoundCard: Asus onboard
Hardrive:Seagate Barracuda 1TB GB 7200rpm SATA 23Mb Cache

Avatar
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Re: Compiling Celsetia in Visual Studio(free)2008

Post #36by cartrite » 01.12.2008, 18:36

1)You have an entry I don't have and I got one that you don't have.
Somehow this line was either removed or was not present in the VC++ you downloaded.

Code: Select all

    $(VCInstallDir)bin
This is why things started to work after you added the line that you did.

2)This may have been part of your install but I don't have it in my environment. I think it points to the SDK folder that is part of the VC++ installation.

Code: Select all

$(WindowsSdkDir)\bin
It probably doesn't matter.
The only other thing that may be an issue is that the second line should probably be on top. You can move it up by highlighting the second line and clicking the up arrow.
You may want to check your winlibs3 again and make sure that you have libpng.lib and the libpng1.dll file in the Celestia top directory. This is probably why you don't see a splash screen or why you see a corrupted earth.
cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Topic author
NIGHTCAST2000
Posts: 146
Joined: 09.10.2006
With us: 18 years 1 month

Re: Compiling Celsetia in Visual Studio(free)2008

Post #37by NIGHTCAST2000 » 01.12.2008, 19:03

Hi Cartrite,
I've got some great news,I followed your advice in your last post,and hey presto! it's working great :D I get the splash screen and the textures are fine now.
I think you're right about winlibs,I downloaded all three versions when I first started and probably extracted the wrong one.

I'd like to thank you very much for all of you helped me.

Regards,
NIGHTCAST2000
Motherboard:Asus Sabretooth 990FX
Processor: AMD Athlon II X3 46
Memory: 4 Gb DDR3 SDRAM
Graphics Card: Nvidia 560 GTX 1Gb
SoundCard: Asus onboard
Hardrive:Seagate Barracuda 1TB GB 7200rpm SATA 23Mb Cache

jdavies
Posts: 65
Joined: 05.12.2008
With us: 15 years 11 months

Re: Compiling Celsetia in Visual Studio(free)2008

Post #38by jdavies » 06.12.2008, 01:50

I just completed this process also following the instructions on the wiki cited at the top of this thread. I also needed to copy intl.dll from my 1.5.1 install diectory to get the newly compiled Celestia 1.6 to run. I don't know how I didn't get that file from the winlibs*.zip files.

I am very happy to report that I have a working Celestia 1.6 that I compiled from todays SVN image. :D


Return to “Development”