mirror of https://github.com/Poikilos/b3view
7.7 KiB
7.7 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
[git] - 2021-03-28
Added
- a
--test-and-exit
option
[git] - 2021-02-22
Added
- Recent menu item loading (not completely implemented in previous commits).
Fixed
- identification of recent menu items
[git] - 2021-02-21
Added
- codeblocks support
Fixed
- paths in shell script
[git] - 2021-02-17
Added
- a settings system and related tests
- more string functions in Utility
Fixed
- Add a missing quote in TestUtility output.
[git] - 2020-07-30
(Poikilos)
Added
- Allow setting the animation loop.
[git] - 2020-03-10
(Poikilos)
Added
replaceAll
TestUtility
("Utility.cpp" now tests itself, but only one feature so far.)getTextureCount
(can examine node by examining all materials, or examine material- Blitz3D format notes
OnSelectMesh
(cleans up model-specific variables)getSuffix
getPrefix
startsWithAny
endsWithAny
Changed
- Rename some member variables to start with
m_
. - Detect textures better, and simplify code:
- Search for substring and substring without underscores within potential textures.
- Detect as soon as model is loaded if the model has no textures.
- Cache both the full and matching texture lists.
- If there are any matching textures (named like model), only use that list for cycling with F3 (or Shift F3).
- Combine
m_NextPath
andm_PreviousPath
intom_LoadedMeshPath
and change usage.
- Update screenshot.
- Reduce line length in some places.
- Improve Changelog formatting.
Fixed
- Fix crash trying to load a non-mesh after a mesh was loaded (See "Manipulating mesh on failed load" section of README.md).
Removed
m_NextPath
andm_PreviousPath
(replaced bym_LoadedMeshPath
and simplified cycling code)
[git] - 2019-07-03
(Poikilos)
Changes
- Move the display mode booleans to Engine.
- Add more string utilities.
- Do fuzzy search against actual texture names if can't find theoretical ones.
[git] - 2019-05-16
(Poikilos)
Added
- playback menu
- Move framerate controls to playback menu.
- fix frame-by-frame hotkeys
- move code to new incrementFrame method
[git] - 2019-05-16
(Poikilos)
Changed
- improve minetest texture detection (alternate conventions)
- turn off interpolation if loadNextTexture detects minetest directory structure (../textures/)
[git] - 2019-05-16
(Poikilos)
Added
- export COLLADA (non-Blender), IRR, IRRMESH, OBJ, STL
- show dialog box if operation can't be performed
- improve error reporting in called methods
- add irr mimetype (Irrlicht Scene, mesh file references and settings only)
- add irrlicht mimetype (static/non-animated Irrlicht mesh)
[git] - 2019-04-19
(Poikilos)
Added
- box for axis length (size of the axis widget)
- box for frame rate
- camera target widget
- option for turning off origin axis widget
- Add menu items for hotkeys, and show hotkey on relevant menu items.
Changed
- Reorder items on panel.
- Hotkeys are different so they're not triggered when typing in the panel.
- Don't reset yaw nor camera distance when panning.
- Show name of loaded model on title bar.
- Fix crash on loading texture before model.
- Fix use of unsigned frame delta for slow and fast options.
[git] - 2019-04-08
(Poikilos)
Added
- snapWidgets (move playbackWindow on resize, not leave past edge)
Changed
- changed enum values to leave room in between, comment unused
- fixed issue in Utility not detecting backslashes correctly
- renamed Utils.* to Utility.* to match class name
- coding style to WebKit (run ./etc/quality.sh to check)
- improve pan - don't reset view
- improve initial camera settings: angle calculation
[git] - 2019-04-08
(Poikilos)
Added
- toggle texture interpolation (via checkbox and
x
hotkey) - INDEX_ variables to store ID of GUI elements
- Text box show name of loaded texture path
Changed
- check if model is loaded before changing view options (prevents crash)
- unified checkboxes with m_* booleans, by tracking whether box is checked via INDEX_ variables for each ID of GUI elements.
- look for ../textures/.png & .jpg 1st time pressing
t
- Use alpha on textures by default (see EMT_TRANSPARENT_ALPHA_CHANNEL_REF in Engine.cpp)
[git] - 2019-03-09
(Poikilos)
Added
- completed rotation controls (Blender-like)
- pan up and down (Blender-like, but only up and down)
- Z or Y to switch ("up" axis)
- change up axis to Z when 3ds is loaded
- model-ms3d.xml mime type file
[git] - 2019-03-09
(Poikilos)
Added
- hotkeys to reload model/texture
- license (see README.md for licensing history)
Changed
- only try to load png or jpg textures--skip others when cycling
- cycle backwards correctly
- fix some of the header creep (remove unecessary includes in h files)
- improve initial camera position and angle (see top of characters since camera is higher; z-forward characters face camera at an angle)
- Clarify relationship between camera start position in m_Engine and
m_View's rotation (m_Pitch and m_Yaw). Now,
setNewCameraPosition
operates on view correctly (relatively) no matter where camera starts.
[git] - 2019-03-07
(Poikilos)
Added
- playback controls
[git] - 2019-03-06
(Poikilos)
Added
- created install.sh and install.bat, and added Install and Usage to README.md
- icon, install scripts, and mime type (
model/b3d
)--see README.md - mime type (
model/x
) - added ClearSansRegular.ttf
- hotkeys to cycle ../textures/*
Changed
- The program can now start without "test.b3d" in the current working directory (fixed Segmentation Fault).
- set
TARGET = b3view
in B3View.pro, so that binary is lowercase as per usual Linux naming conventions. - check for font load failure properly, and load properly if succeeds
- check for "ClearSansRegular.ttf" instead of "arial.ttf"
- move
using namespace
directives fromh
files and specify upon use, as per C++ best practices; add directives tocpp
files only as needed (removed cumulative namespace creep).
[git-94e3b8f] - 2019-03-06
(Poikilos)
Added
- README.md
Changed
(CGUITTFont methods are in CGUITTFont class unless otherwise specified)
- fixed instances of "0 as null pointer constant" (changed to
nullptr
) - changed inconsistent use of spaces and tabs (changed tabs to 4 spaces)
- (UserInterface.cpp) fixed "logical not is only applied to the left
hand side of this comparison..." (put parenthesis around
event.EventType == EET_GUI_EVENT
) - Silently degrade to pixel font if font file cannot be read (fixes
Segmentation Fault when font file cannot be read).
- check for nullptr before using:
- (CGUITTFont.cpp)
tt_face->face
ingetWidthFromCharacter
,getGlyphByChar
(return 0 as bad as per convention: existing code already checks for 0--seegetWidthFromCharacter
),getKerningWidth
,draw
,attach
(also don't copy null by reference there--instead, set to nullptr if source is nullptr)
- (CGUITTFont.cpp)
- check length of array before using
- (CGUITTFont.cpp) elements of
Glyph
array (typecore::array<CGUITTGlyph>
) ingetHeightFromCharacter
- (CGUITTFont.cpp) elements of
- (CGUITTFont.cpp) check whether file can be read in
CGUITTFace::load
before proceeding
- check for nullptr before using:
Removed
- arial.tff removed, since it may be the "real" Arial font, which has a proprietary license
[git-d964384] - 2019-03-06
Changed
(first poikilos commit, based on https://github.com/egrath)
- changed
#include <irrlicht.h>
to#include <irrlicht/irrlicht.h>
Added
- .gitignore (a Qt .gitignore)
- changelog.md