Line Particles Rendering

edited 2014 Feb 28 in Technical Support
I don't know is it a feature, but looks like a bug. The line type particles with additive blending option have a strange behavior. They're rendering additive against world and themselves, but not against other particles.
That rendering issue is dday version and video card independent.
LineParticlesRendering.png
Current screenshot from Win 7 x64/ NV GTX480/ dday 1.12.2
and a log file
Application path: C:\Program Files (x86)\Doomsday\Bin\Doomsday.exe
Enabled log entry level: MESSAGE
Created a new 32.0 MB memory volume.
Config::read: modules/Config matches version [ 2, 0, 0, 1036 ]
Executable: Doomsday Engine 1.12.2 (Stable 32-bit #1036) Nov  2 2013 14:49:23.
Command line (14 strings):
  0: ..\Bin\Doomsday.exe
  1: -basedir
  2: C:\Program Files (x86)\Doomsday/
  3: -file
  4: C:\Users\d.nikiforov\Dropbox\HUD_Mage_v1.21.pk3
  5: -sfxchan
  6: 16
  7: -notexcomp
  8: -game
  9: hexen
  10: -iwad
  11: C:\Program Files (x86)\Steam\steamapps\common\Hexen\base\HEXEN.WAD
  12: -userdir
  13: Z:\Documents\Doomsday Frontend\runtime/
Loading shader definitions from read-only archive entry "data/shaders.dei" at path "/data/
doomsday.pk3/data/shaders.dei" (out of archive in read-only native file "(basedir)\data\
doomsday.pk3")
Initializing plugins...
Library_New: Error opening "/bin/audio_openal.dll": [LoadError] (Library::Library) Cannot
                                                    load library C:\Program Files (x86)\
                                                    Doomsday\Bin\plugins\audio_openal.dll:
                                                    
  loadPlugin: Did not load "/bin/audio_openal.dll" ([LoadError] (Library::Library) Cannot
              load library C:\Program Files (x86)\Doomsday\Bin\plugins\audio_openal.dll:
              ).
  (id:1) dehread
  (id:2) doom
  (id:3) heretic
  (id:4) hexen
  (id:5) wadmapconverter
Starting GuiApp event loop...
Canvas: Gained focus.
OpenGL information:
  Version: 4.4.0
  Renderer: GeForce GTX 480/PCIe/SSE2
  Vendor: NVIDIA Corporation
Capabilities:
  Compressed texture formats: 23
  Available texture units: 4
  Maximum texture anisotropy: 16
  Maximum texture size: 16384
  Line width granularity: 0.125
  Line width range: 0.5...10
OpenGL Extensions:
    AMD extensions:
        multi_draw_indirect
    ARB extensions:
        arrays_of_arrays, base_instance, blend_func_extended, buffer_storage,
        clear_buffer_object, clear_texture, color_buffer_float, compatibility,
        compressed_texture_pixel_storage, conservative_depth, compute_shader,
        compute_variable_group_size, copy_buffer, copy_image, debug_output,
        depth_buffer_float, depth_clamp, depth_texture, draw_buffers, draw_buffers_blend,
        draw_indirect, draw_elements_base_vertex, draw_instanced, enhanced_layouts,
        ES2_compatibility, ES3_compatibility, explicit_attrib_location,
        explicit_uniform_location, fragment_coord_conventions, fragment_layer_viewport,
        fragment_program, fragment_program_shadow, fragment_shader,
        framebuffer_no_attachments, framebuffer_object, framebuffer_sRGB,
        geometry_shader4, get_program_binary, gpu_shader5, gpu_shader_fp64,
        half_float_pixel, half_float_vertex, imaging, indirect_parameters,
        instanced_arrays, internalformat_query, internalformat_query2,
        invalidate_subdata, map_buffer_alignment, map_buffer_range, multi_bind,
        multi_draw_indirect, multisample, multitexture, occlusion_query,
        occlusion_query2, pixel_buffer_object, point_parameters, point_sprite,
        program_interface_query, provoking_vertex, robust_buffer_access_behavior,
        robustness, sample_shading, sampler_objects, seamless_cube_map,
        separate_shader_objects, shader_atomic_counters, shader_bit_encoding,
        shader_draw_parameters, shader_group_vote, shader_image_load_store,
        shader_image_size, shader_objects, shader_precision, query_buffer_object,
        shader_storage_buffer_object, shader_subroutine, shader_texture_lod,
        shading_language_100, shading_language_420pack, shading_language_include,
        shading_language_packing, shadow, stencil_texturing, sync, tessellation_shader,
        texture_border_clamp, texture_buffer_object, texture_buffer_object_rgb32,
        texture_buffer_range, texture_compression, texture_compression_bptc,
        texture_compression_rgtc, texture_cube_map, texture_cube_map_array,
        texture_env_add, texture_env_combine, texture_env_crossbar, texture_env_dot3,
        texture_float, texture_gather, texture_mirror_clamp_to_edge,
        texture_mirrored_repeat, texture_multisample, texture_non_power_of_two,
        texture_query_levels, texture_query_lod, texture_rectangle, texture_rg,
        texture_rgb10_a2ui, texture_stencil8, texture_storage,
        texture_storage_multisample, texture_swizzle, texture_view, timer_query,
        transform_feedback2, transform_feedback3, transform_feedback_instanced,
        transpose_matrix, uniform_buffer_object, vertex_array_bgra, vertex_array_object,
        vertex_attrib_64bit, vertex_attrib_binding, vertex_buffer_object, vertex_program,
        vertex_shader, vertex_type_10f_11f_11f_rev, vertex_type_2_10_10_10_rev,
        viewport_array, window_pos, sparse_texture
    ATI extensions:
        draw_buffers, texture_float, texture_mirror_once
    EXT extensions:
        texture_env_add, abgr, bgra, bindable_uniform, blend_color,
        blend_equation_separate, blend_func_separate, blend_minmax, blend_subtract,
        compiled_vertex_array, Cg_shader, depth_bounds_test, direct_state_access,
        draw_buffers2, draw_instanced, draw_range_elements, fog_coord, framebuffer_blit,
        framebuffer_multisample, framebuffer_multisample_blit_scaled, framebuffer_object,
        framebuffer_sRGB, geometry_shader4, gpu_program_parameters, gpu_shader4,
        multi_draw_arrays, packed_depth_stencil, packed_float, packed_pixels,
        pixel_buffer_object, point_parameters, provoking_vertex, rescale_normal,
        secondary_color, separate_shader_objects, separate_specular_color,
        shader_integer_mix, shader_image_load_store, shadow_funcs, stencil_two_side,
        stencil_wrap, texture3D, texture_array, texture_buffer_object,
        texture_compression_dxt1, texture_compression_latc, texture_compression_rgtc,
        texture_compression_s3tc, texture_cube_map, texture_edge_clamp,
        texture_env_combine, texture_env_dot3, texture_filter_anisotropic,
        texture_integer, texture_lod, texture_lod_bias, texture_mirror_clamp,
        texture_object, texture_shared_exponent, texture_sRGB, texture_sRGB_decode,
        texture_storage, texture_swizzle, timer_query, transform_feedback2, vertex_array,
        vertex_array_bgra, vertex_attrib_64bit, import_sync_object
    EXTX extensions:
        framebuffer_mixed_formats
    IBM extensions:
        rasterpos_clip, texture_mirrored_repeat
    KHR extensions:
        debug
    KTX extensions:
        buffer_region
    NV extensions:
        bindless_multi_draw_indirect, blend_equation_advanced, blend_square,
        compute_program5, conditional_render, copy_depth_to_color, copy_image,
        depth_buffer_float, depth_clamp, draw_texture, ES1_1_compatibility,
        explicit_multisample, fence, float_buffer, fog_distance, fragment_program,
        fragment_program_option, fragment_program2, framebuffer_multisample_coverage,
        geometry_shader4, gpu_program4, gpu_program4_1, gpu_program5,
        gpu_program5_mem_extended, gpu_program_fp64, gpu_shader5, half_float,
        light_max_exponent, multisample_coverage, multisample_filter_hint,
        occlusion_query, packed_depth_stencil, parameter_buffer_object,
        parameter_buffer_object2, path_rendering, pixel_data_range, point_sprite,
        primitive_restart, register_combiners, register_combiners2,
        shader_atomic_counters, shader_atomic_float, shader_buffer_load,
        shader_storage_buffer_object, texgen_reflection, texture_barrier,
        texture_compression_vtc, texture_env_combine4, texture_expand_normal,
        texture_multisample, texture_rectangle, texture_shader, texture_shader2,
        texture_shader3, transform_feedback, transform_feedback2, vertex_array_range,
        vertex_array_range2, vertex_attrib_integer_64bit, vertex_buffer_unified_memory,
        vertex_program, vertex_program1_1, vertex_program2, vertex_program2_option,
        vertex_program3
    NVX extensions:
        conditional_render, gpu_memory_info, shader_thread_group
    S3 extensions:
        s3tc
    SGIS extensions:
        generate_mipmap, texture_lod
    SGIX extensions:
        depth_texture, shadow
    SUN extensions:
        slice_accum
    WGL extensions:
        EXT_swap_control
    WIN extensions:
        swap_hint
  Extensions (WGL):
    WGL extensions:
        ARB_buffer_region, ARB_create_context, ARB_create_context_profile,
        ARB_create_context_robustness, ARB_extensions_string, ARB_make_current_read,
        ARB_multisample, ARB_pbuffer, ARB_pixel_format, ARB_pixel_format_float,
        ARB_render_texture, ATI_pixel_format_float, EXT_create_context_es_profile,
        EXT_create_context_es2_profile, EXT_extensions_string, EXT_framebuffer_sRGB,
        EXT_pixel_format_packed_float, EXT_swap_control, EXT_swap_control_tear,
        NVX_DX_interop, NV_DX_interop, NV_DX_interop2, NV_delay_before_swap,
        NV_float_buffer, NV_multisample_coverage, NV_render_depth_texture,
        NV_render_texture_rectangle
Initializing Render subsystem...
Setting up platform state...
FMOD Sound System (c) Firelight Technologies Pty, Ltd., 1994-2013.
Audio configuration (by decreasing priority):
  CD: FMOD/CD
  Music: FMOD/Ext
  SFX: FMOD
Sfx_InitChannels: 16 channels.
Initializing Resource subsystem...
Initializing Texture subsystem...
Initializing Material subsystem...
Initializing InFine subsystem...
Initializing UI subsystem...
Locating "HACX - Twitch 'n Kill"...
Locating "Chex(R) Quest"...
Locating "Final DOOM: TNT: Evilution"...
Locating "Final DOOM: The Plutonia Experiment"...
Locating "DOOM 2: Hell on Earth"...
Locating "Ultimate DOOM"...
Locating "DOOM Registered"...
Locating "DOOM Shareware"...
Locating "Heretic: Shadow of the Serpent Riders"...
Locating "Heretic Registered"...
Locating "Heretic Shareware"...
Locating "Hexen: Deathkings of the Dark Citadel"...
Locating "Hexen"...
Locating "Hexen v1.0"...
Locating "Hexen 4-map Demo"...
Locating "Hexen 4-map Beta Demo"...
Loading game resources...
  IWAD identification: 0166c805
loadCompositeTextureDefs: Loaded all 359 texture definitions from "C:\Program Files (x86)\
                          Steam\steamapps\common\Hexen\base\HEXEN.WAD:(basedir)\
                          TEXTURE1.lmp".
^ : Loaded all 1 texture definitions from "C:\Program Files (x86)\Steam\steamapps\common\
    Hexen\base\HEXEN.WAD:(basedir)\TEXTURE2.lmp".
R_InitCompositeTextures: Completed in 0.2 seconds.
R_InitFlatTetxures: Completed in 0.009 seconds.
'ARTIPTN2' is not a valid sprite name, ignoring.
'ARTISOAR' is not a valid sprite name, ignoring.
'ARTIINVU' is not a valid sprite name, ignoring.
'ARTIPORK' is not a valid sprite name, ignoring.
'ARTIEGGC' is not a valid sprite name, ignoring.
'ARTISPHL' is not a valid sprite name, ignoring.
'ARTITRCH' is not a valid sprite name, ignoring.
'ARTIATLP' is not a valid sprite name, ignoring.
'ARTISUMN' is not a valid sprite name, ignoring.
'ARTIPSBG' is not a valid sprite name, ignoring.
'ARTISPED' is not a valid sprite name, ignoring.
'ARTIBMAN' is not a valid sprite name, ignoring.
'ARTIBRAC' is not a valid sprite name, ignoring.
'ARTITELO' is not a valid sprite name, ignoring.
'ARTIBLST' is not a valid sprite name, ignoring.
'ARTISKLL' is not a valid sprite name, ignoring.
'ARTIBGEM' is not a valid sprite name, ignoring.
'ARTIGEMR' is not a valid sprite name, ignoring.
'ARTIGEMG' is not a valid sprite name, ignoring.
'ARTIGMG2' is not a valid sprite name, ignoring.
'ARTIGEMB' is not a valid sprite name, ignoring.
'ARTIGMB2' is not a valid sprite name, ignoring.
'ARTIBOK1' is not a valid sprite name, ignoring.
'ARTIBOK2' is not a valid sprite name, ignoring.
'ARTISKL2' is not a valid sprite name, ignoring.
'ARTIFWEP' is not a valid sprite name, ignoring.
'ARTICWEP' is not a valid sprite name, ignoring.
'ARTIMWEP' is not a valid sprite name, ignoring.
'ARTIGEAR' is not a valid sprite name, ignoring.
'ARTIGER2' is not a valid sprite name, ignoring.
'ARTIGER3' is not a valid sprite name, ignoring.
'ARTIGER4' is not a valid sprite name, ignoring.
'ARTIHRAD' is not a valid sprite name, ignoring.
R_InitSpriteTextures: Completed in 1.2 seconds.
Parsing primary config "configs\hexen\game.cfg"...
B_BindCommand: Deleting binding 39, it has been overridden by binding 126.
Clearing binding context 'global'...
Clearing binding context 'deui'...
Clearing binding context 'console'...
Clearing binding context 'message'...
Clearing binding context 'chat'...
Clearing binding context 'shortcut'...
Clearing binding context 'gameui'...
Clearing binding context 'menu'...
Clearing binding context 'finale'...
Clearing binding context 'map-freepan'...
Clearing binding context 'map'...
Clearing binding context 'game'...
Parsing definition files...
readAllDefinitions: Completed in 0.093 seconds.
Definitions:
  16 animation groups
  5 composite fonts
  8 finales
  65 lights
  11 materials
  521 models
  27 particle generators
  39 songs
  245 sound effects
  300 sprite names
  3018 states
  13 surface decorations
  162 text strings
  4 texture environments
  400 things
buildSprites: Completed in 0.048 seconds.
R_InitSprites: Completed in 0.048 seconds.
Models_Init: Completed in 1.43 seconds.
Parsing SNDINFO...
SN_InitSequenceScript: Registering sound sequences.
Failed locating image resource for "Particle40".

Hexen

Loading map "MAP01"...
World::loadMap > WadMapConverter: Recognized a Hexen format map.
Map: Pruned 282 vertexes (0 equivalents, 282 unused).
^ : Geometry bounds:[(-3648, -2336)->(472, 2880) size:(4120, 5216)]
^ : Line blockmap dimensions:(33, 41)
^ : BSP built: 1036 Nodes, 1037 Leafs, 5098 Segments and 596 Vertexes.
Tree balance is 20:28.
^ : BSP built in 0.27 seconds.
^ : Mobj blockmap dimensions:(33, 41)
^ : Polyobj blockmap dimensions:(33, 41)
^ : BSP leaf blockmap dimensions:(33, 41)
Current map elements:
  1971 Vertexes
  1770 Lines
  12 Polyobjs
  400 Sectors
  1036 BSP Nodes
  1037 BSP Leafs
Map::initNodePiles: Completed in 0 seconds.
P_PtcInitForMap: Completed in 0 seconds.
PO_InitForMap: Initializing polyobjects.
Map::initSkyFix: Completed in 0 seconds.
Precaching completed in 0.87 seconds.
Rend_RadioInitForMap: Completed in 0.005 seconds.
Map::initBias: Completed in 0 seconds.
Sector #68 is unclosed near (-2496, 1493).
Sector #69 is unclosed near (-2090, 976).
Sector #174 is unclosed near (-824, -608).
Sector #295 is unclosed near (-2182, 2035).

Map 1 (1): WINNOWING HALL

Canvas: Lost focus.
^ : Gained focus.
^ : Lost focus.
^ : Gained focus.
^ : Lost focus.
^ : Gained focus.
Stopping GuiApp event loop
GuiApp event loop exited with code 0
Shutting down the console...
Z_Shutdown: Used 1 volumes, total 33554432 bytes.
Restoring original display mode due to shutdown.
Canvas: Lost focus.

Comments

  • Kind of related (i.e it's particle rendering), but not at the same time.

    Particles aren't rendered at all behind wall textures that have translucency ; they have never been as far as I am aware. Dynamic lights and halo's appear to be.

    The only way to currently have a wall texture with translucency, is an external graphic replacement; a png or similar in the textures folder, which is relatively obscure.

    But Boom has a translucency linetype, which will make this oversight more apparent in future; a mapper can choose to make any wall on their map translucent.
  • but the pt_line particles are not blending with other particles except there self and the world witch is quite strange.
  • I've asked Deng Team about the additive blending issue and long story short (I figure it's best I don't try to reword the technical part), it's basically a limitation of the particle system and renderer.

    Deng Team will be considering whether there is an efficient enough method available these days, to use in the new renderer and associated new particle system, that doesn't have this limitation.
Sign In or Register to comment.