Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Jun 19, 2009

  1. Björn Gustavsson

    Generate release notes

    bjorng authored
  2. Dan Gudmundsson

    Re-implement proxy mode with vertex arrays

    NOTE: The proxy mode has been optimized by using vertex arrays. [dgud]
    dgud authored bjorng committed
  3. Björn Gustavsson

    Further corrections of moving lights in tweak mode

    wpc_tweak attempts to select all vertices/edges/faces
    for a light, but incorrectly in face and vertex mode.
    Remove that code, and instead let wings_pick make
    sure that all vertices/edges/faces or none are selected
    for lights.
    bjorng authored
  4. Björn Gustavsson

    Implement a driver for picking instead of using OpenGL

    Since very few applications use picking/selection support
    in OpenGL, it tends to be poorly supported in many OpenGL
    drivers. Therefore, implement a driver to do picking
    ourselves. An advantage of doing it this way is
    that the pick code in the driver can directly use the
    vertex array that is used for drawing.
    NOTE: Selection (finding out which face is under the mouse
    cursor) used to be done using a special selection render
    mode in OpenGL. However, this mode does not work well
    in all OpenGL drivers. Therefore I have implemented my
    own code for selection handling in C as a driver for the
    Erlang emulator. (Thanks to FonteBoa for testing.) [bjorng]
    bjorng authored
  5. Björn Gustavsson

    Merge branch 'master' into next

    bjorng authored
  6. Björn Gustavsson

    Stop the Edge Ring command from selecting hidden edges

    NOTE: The Edge Ring command (Select|Edge Loop|Edge Ring) would
    select edges between hidden faces. [bjorng]
    bjorng authored
  7. Björn Gustavsson

    Remove first line -- add when it is time for a release

    bjorng authored

Jun 17, 2009

  1. Björn Gustavsson

    Show notes in chronological order

    bjorng authored

Jun 13, 2009

  1. Björn Gustavsson

    Add a script to extract release notes from check-in comments

    Since we started to have separate branches for every
    change, there will typically be a merge conflict
    on NOTES-1.1 every time a branch is merged into 'pu'
    or 'next'.
    To avoid the merge conflict, we will put the release
    notes into the check-in comments. The next paragraph
    is a release note.
    NOTE: For developers: Release notes to be included in a release
    should no longer be directly added to NOTES-1.1 files, but
    instead be written into the check-in comment. Everything in
    a comment from "NOTE:" (without the quotations marks) at
    the beginning of a line to the end of the check-in comment,
    will be included in the release notes.
    To extract the release notes, run the script tools/extract_notes.
    It will extract and print all notes for all commits after
    the tag for the latest release. [bjorng]
    bjorng authored
  2. Björn Gustavsson

    Update release notes: R13B01 is now required

    The following correction in R13B01 eliminates a problem with
    dissolving all edges in an object:
    OTP-8033  array:from_orddict([]) and array:from_list([]) would
              construct fixed arrays instead of extendible arrays.
    bjorng authored
  3. Björn Gustavsson

    Some cleanups

    Remove unused raw_vs field in #dlo{}. Remove ?TC(...).
    bjorng authored
  4. Björn Gustavsson

    Eliminate the wings_draw_util module

    Most of functions in the wings_draw_module are only
    called from one other module. Move those functions
    into the modules that call them.
    The good_triangulation/5 function is called from two
    modules. Move it into the wings_tesselation module
    (one of the callers) and rename it to is_good_triangulation/5.
    Move the code in wings_draw_util:init/0 into wings_render:init/0.
    bjorng authored
  5. Björn Gustavsson

    Protect vertex buffers from garbage collection

    If the last use of a binary is in a call to gl:vertexPointer/4,
    the binary could very well be deallocated before it is used by
    (for example) gl:drawArrays/3. Make sure that the binary is
    kept by passing it to a dummy function after the call
    to gl:drawArrays/3.
    You might think that vertex arrays kept in #dlo{} records are
    protected from garbage collections, but it turns out that
    temporary #dlo{} records are created in several places.
    Therefore, draw_faces_all/2 and smooth_faces_all/2 also need
    to protect their D (#dlo{}) arguments.
    bjorng authored
  6. Björn Gustavsson

    Don't keep #dlo.face_ns after creating the display list

    The buffer for smooth normals is never re-used when the
    display list has been created, so there is no point
    keeping it.
    bjorng authored
  7. Björn Gustavsson

    Don't build lists that are immediately matched apart

    Use separate arguments instead.
    bjorng authored
  8. Björn Gustavsson

    Handle degenerate faces when showing smooth normals

    Degenerate faces that have lost of one or more triangles in the triangulation
    would cause a badmatch (because if we see two triangles after triangulation,
    we expect the original face to have exactly four vertices). Avoid the
    crash by using the face normal for all vertices if the original face
    doesn't have the expected number of vertices.
    bjorng authored
  9. Björn Gustavsson

    Get rid of the OpenGL renderer and old drawing utilities

    It is no longer possible to support the OpenGL renderer.
    Use glu:triangulate/2 instead of wpc_ogla:triangulate.
    Replace the other few uses with primitive OpenGL code
    (i.e. gl:vertex3fv/1).
    bjorng authored
  10. Björn Gustavsson

    Now supporting split.

    bjorng authored
  11. Björn Gustavsson

    Properly display vertex colors.

    bjorng authored
  12. Dan Gudmundsson

    Miscellanous bug fixes

    dgud authored bjorng committed
  13. Björn Gustavsson

    Optimized drawing by by using a single interleaved array

    I saved some time by putting vertex positions in the same
    array. This could be extended to always put all data in one
    array, and we could save information about the layout of the
    array (stride and so on) so that we could set up all arrays
    The stride is stored with each buffer pointer, so that code
    outside of wings_draw_setup, will not need to know
    (or have any need to know) whether a given buffer
    is interleaved or not.
    bjorng authored
  14. Dan Gudmundsson

    Work faces and smooth faces uses vertex arrays.

    First step, to get input of code and for time measurement.
    Not completely working yet.
    dgud authored bjorng committed
  15. Björn Gustavsson

    Do not crash on stale hotkeys

    Hotkeys could have been created in ancient version of Wings or
    in a plug-in that is now disabled. It is annyoying to get a
    crash dump if you use a stale hotkey.
    Therefore, if a command that is initiatied by a hotkey fails
    in any way, show a dialog box asking the user what to do.
    In the dialog box we allow the user to ignore the error or to
    delete the offending hotkey. (We do not give a "Crash Dump"
    dump button, because it seems strange to generate a crash
    dump later than the actual error occurred.)
    To handle the related problem that repeating a command may
    cause a crash because a plug-in has been disabled, have the
    plug-in manager delete the last repeatable command (so that
    it cannot be repeated) if any plug-in was enabled or disabled.
    Handle stale hotkeys in Tweak mode in the same way.
    AutoUV does not yet handle stale hotkeys.
    bjorng authored
  16. Björn Gustavsson

    Only use multisampling with OpenGL implementations that support it

    Test for the GL_ARB_multisample extension and only enable the
    choice for multisampling in the preferences if the OpenGL implementation
    supports it. That will avoid (harmless) error messages to the console
    if Develop|OpenGl Errors has been enabled.
    Also remove defines such as SDL_GL_MULTISAMPLEBUFFERS from
    wings_init that there only there to support an old ESDL (that
    will not work anyway for other reasons).
    Update Help|OpenGL Info to report the number of sample buffers.
    bjorng authored
  17. added uniform edge collapse with optional auto cleanup

    Richard Jones authored bjorng committed
  18. crash when using Shift Spherical now fixed.

    Richard Jones authored bjorng committed
  19. consolidation of extrude region with extrude, and extract region with…

    … extract faces.
    Richard Jones authored bjorng committed
  20. Update the German translation

    Torsten Manz authored bjorng committed
  21. Björn Gustavsson

    Merge branch 'master' into next

    bjorng authored

Jun 10, 2009

  1. fixed crash in Edge|Collapse

    Richard Jones authored bjorng committed

Jun 07, 2009

  1. Björn Gustavsson

    Merge branch 'master' into next

    bjorng authored
  2. Björn Gustavsson

    Fix bad mirror face in old Wings files

    Some old Wings files can have a mirror face that
    does not exist in the face table. Clear the mirror
    face to avoid the later crashes if it referes to
    a non-existing face.
    bjorng authored
  3. Björn Gustavsson

    Return a correct selection after doing a Doo-Sabin subdivision

    The selection was not sorted in object ID order, which
    could cause crashes.
    bjorng authored

Jun 06, 2009

  1. Björn Gustavsson

    Have wings_wm:update_focus/1 force a redisplay

    We need a redraw event when focus shifts to make sure
    that the window title bar indicate which window that
    has the focus. Instead of requiring each window to handle
    the got_focus message, let wings_wm:update_focus/1 itself
    call wings_wm:dirty/0 to force a redraw next time the
    event loop is entered.
    Also remove calls to wings_wm:dirty/0 from the event
    handling code for 'got_focus' in all event handlers
    in the core.
    bjorng authored

May 30, 2009

  1. Björn Gustavsson

    Update release notes for the 1.1.2 relese

    bjorng authored
Something went wrong with that request. Please try again.